Skip to main content

Posts

Better object oriented pattern in javascript in so mistakes call be avoided in a better way very simple

check the code below -------------------------------------------------------- https://stackblitz.com/edit/js-9vhtdm?file=index.js   //better ES5 object oriented in es5 //rules  //1. you can pass values in any order //2. default value //3. handle undefined in a better way  throw new Error function   Hero ( obj = undefined ) {      //if object is null return throw a new Error      if ( obj === undefined )      {        throw   new   Error ( "Empty Object" );      }      const   { name , age }= obj      this . name = name ;      this . age = age ; } //now extend myhero class function   Myhero ( obj = undefined )...

Window Sliding Technique is a useful way to solve some problem here is a live example of it

https://www.geeksforgeeks.org/window-sliding-technique/  working example https://www.onlinegdb.com/edit/BJX3JA0Zv code => #include <stdio.h> #include<iostream> #include<vector> using namespace std; //https://www.geeksforgeeks.org/window-sliding-technique/ int Windowslidingtechnique(vector<int> &vec,int element) {      //get sum      int sum=0;      for(int i=0;i<element;i++)      {          sum+=vec.at(i);      }      //sliding window technique      int windowSum=sum;      int maxSum=0;      for(int i=element;i<vec.size();i++)      {          windowSum+=vec.at(i)-vec.at(i-element);          maxSum=max(maxSum,windowSum);      }      return maxSum; } int main() {     vector<int> ve...

Find a triplet that sum to a given value c++ using vector

 working link more solution=> https://www.geeksforgeeks.org/find-a-triplet-that-sum-to-a-given-value/ code https://www.onlinegdb.com/edit/HkS7dTRWP solution below *******************************************************************************/ #include <stdio.h> #include<algorithm> #include<iostream> #include<vector> using namespace std; void triplet(vector<int> &vec,int sum) {     //sort the vector      sort(vec.begin(),vec.end());     int i=0;     int j=vec.size()-1;     while(j>=i)     {         if(vec.at(i)+vec.at(i+1)+vec.at(j)==sum)         {              const int a=vec.at(i);              const int b=vec.at(i+1);              const int c=vec.at(j);              std::cout <<a<<"-"...

A simple binary search tree with generic approach tree can store any type of data. (DFS and BFS)

 1. a binary search tree in c++ using a generic approach with both BFS and DFS approach    working tree    https://www.onlinegdb.com/edit/HkuQLdA-w code=> some properties of binary search tree-> 1. binary search tree is not always a balanced tree.  2. Inorder, traversing gives you sorted data.  3.  best is o(log n) and worst is O(n).  4. left node data is always less than root data and right node data always be greater than root data.  5. red-black tree STL map is a balanced binary search tree. *******************************************************************************/ #include <stdio.h> #include<iostream> #include<queue> using namespace std; template < typename T > class Node {   //can store any type of data private:   //genric data or store any type of data   T data;   //reference of left pointer   Node *left = nullptr;   //reference of right pointer   Node *rig...

Better Memory management with PixiJS or How to manage cpu and cpu memory in PixiJS.

PixiJS is my favorite framework when i am looking for a web games specially for mobile or desktop  PixiJS is fast blazing fast and you can get a decent FPS even on older device.   so here is my optimization techniques for PixiJs 1. manage your sprites in a better way use spritesheet to reduce the draw calls create big sprite sheet which contain multiple sprites can be draw in gpu with a single draw call. use TexturePacker  https://www.codeandweb.com/texturepacker  best tool when its comes to spritesheet 2. for floating point calculation round off calculation for example let  speed = 0.75 ; let  position = 100 ; console . log ( Math . round ( speed * position )) 3. don't create very big canvas when u need a big canvas size game just try to create a small canvas and translate it. 4. its very important one managing TextureCache in memory you can get all TextureCache list by using  Object.entries(PIXI.utils.TextureCache); so even you use ap...

all about multithreading in c++ and how to use it in a better way (c++11 and c++17)

THREADING IN C++ before going to threading we need to check out some concepts of thread synchronization in modern computers. thread deadlock race condition spin lock context switching parallelism  concurrency semaphore mutex Scheduling Cancellation Synchronization These day we have multi core processor thats mean we can run multiple operation at same time using multi core functionality. so fully support multithreading where you can distribute your complex task to among different threads and after finishing each task they can join main thread. In most of cases graphics manipulation handle by main thread so different child thread can accomplish the operation given to them and than get back to main thread.   so in c++ we required  #include <thread> header file to access threading in c++ so let start with a  very simple program this function takes two parameter and return back sum of both the  parameter int   addNumber ( int x, int y) { ...