With Injamul Hasan

With Injamul Hasan

Share

Progressive Software Engineer | Open Source Enthusiast

12/12/2024

𝐇𝐨𝐰 𝘁𝗼 𝘀𝗲𝗹𝗲𝗰𝘁 𝗗𝗲𝘀𝗶𝗴𝗻 𝗣𝗮𝘁𝘁𝗲𝗿𝗻𝐬?

Correct design selection pattern in software engineering is critical to practical problem-solving. The process will help to decide between patterns based on specific needs. To select a pattern, we must first go through the problem identification. If the problem is related to :

🔸 Object Creation → Creational Patterns
🔸 Object Assembly → Structural Patterns
🔸 Object Interactions → Behavioral Patterns

1. Singleton: Ensures only one instance exists.
2. Factory Method: Delegates object instantiation to subclasses.
3. Abstract Factory: Creates related object families without specifying their concrete classes.
4. Prototype: Clones objects for a prototypical instance.
5. Builder: Constructs complex objects step by step.
6. Adapter: Bridges incompatible interfaces.
7. Bridge: Separates abstraction from implementation.
8. Composite: Treats single and composite objects uniformly.
9. Decorator: Adds behaviors to objects dynamically.
10. Facade: Simplifies complex system interfaces.
11. Flyweight: Shares objects to reduce memory.
12. Proxy: Controls object access.
13. Observer: Notifies changes to multiple objects.
14. Strategy: Encapsulates interchangeable algorithms.
15. Command: Encapsulates a request as an object.
16. State: Changes object behavior with internal state.
17. Visitor: Adds operations to object structures without modifying them.
18. Memento: Captures and restores object states externally.
19. Iterator: Sequentially accesses elements of a collection.
20. Mediator: Centralizes complex communications.
21. Chain of Responsibility: Passes requests along a chain of handlers.
22. Template Method: Defines the skeleton of an algorithm.

20/02/2024

𝗕𝗼𝗼𝘀𝘁 𝗦𝗤𝗟 𝗤𝘂𝗲𝗿𝗶𝗲𝘀 𝘄𝗶𝘁𝗵 𝟰 𝗦𝗶𝗺𝗽𝗹𝗲 𝗧𝗶𝗽𝘀 🚀
Optimizing SQL queries is like fine-tuning your engine for superior performance in the database world. Let's delve into some expert tricks with real SQL examples:

📊 𝙐𝙩𝙞𝙡𝙞𝙯𝙚 𝙄𝙣𝙙𝙚𝙭𝙚𝙨: Indexes act as a roadmap for your database, speeding up data retrieval. Incorporate them wisely to boost query performance.

🃏 𝘼𝙫𝙤𝙞𝙙 𝙒𝙞𝙡𝙙𝙘𝙖𝙧𝙙𝙨: Wildcards like '%' in queries can slow down searches significantly. Be precise in your queries to fetch only the necessary data.

🚫 𝙎𝙖𝙮 𝙉𝙤 𝙩𝙤 𝙎𝙀𝙇𝙀𝘾𝙏 * 𝙎𝙮𝙣𝙙𝙧𝙤𝙢𝙚: Selecting all columns unnecessarily can overload your system. Instead, specify the columns you need, and if necessary, use LIMIT to streamline results.

🔄 𝙇𝙚𝙫𝙚𝙧𝙖𝙜𝙚 𝙅𝙤𝙞𝙣𝙨 𝙤𝙫𝙚𝙧 𝙎𝙪𝙗𝙦𝙪𝙚𝙧𝙞𝙚𝙨: Joins are often more efficient than subqueries, especially in complex queries. Use them strategically to simplify and optimize your SQL statements.

কেন আমাদের API ব্যবহার করতে হবে? 15/02/2024

https://injamulhasanakash.medium.com/%E0%A6%95%E0%A7%87%E0%A6%A8-%E0%A6%86%E0%A6%AE%E0%A6%BE%E0%A6%A6%E0%A7%87%E0%A6%B0-api-%E0%A6%AC%E0%A7%8D%E0%A6%AF%E0%A6%AC%E0%A6%B9%E0%A6%BE%E0%A6%B0-%E0%A6%95%E0%A6%B0%E0%A6%A4%E0%A7%87-%E0%A6%B9%E0%A6%AC%E0%A7%87-33a053c83421

কেন আমাদের API ব্যবহার করতে হবে? API ব্যবহারে বেশ কিছু সুবিধা রয়েছে। Interoperability: এপিআই ব্যবহার করে বিভিন্ন সিস্টেমগুলি একে অপরের সাথে সহজেই কাজ করতে পার....

Photos from With Injamul Hasan's post 05/02/2024

𝐋𝐢𝐧𝐮𝐱 𝐓𝐫𝐨𝐮𝐛𝐥𝐞𝐬𝐡𝐨𝐨𝐭𝐢𝐧𝐠 𝐒𝐜𝐞𝐧𝐚𝐫𝐢𝐨𝐬

Photos from With Injamul Hasan's post 02/02/2024
30/01/2024

Backup File Permission:

1. Use the `getfacl` command to retrieve the permissions of files and directories recursively.
2. Redirect the output of `getfacl` to a file named `permissions.facl`.

Command:
```
$ getfacl -R > permissions.facl
```

Restore File Permission:

1. Employ the `setfacl` command with the `--restore` option to restore permissions from a previously saved file.
2. Specify the file containing the saved permissions (`permissions.facl` in this case).

Command:
```
$ setfacl --restore=permissions.facl
```

This process ensures that you can back up and restore file permissions efficiently.

Photos from With Injamul Hasan's post 30/01/2024

𝐂𝐫𝐞𝐚𝐭𝐞 𝐋𝐢𝐧𝐮𝐱 𝐔𝐬𝐞𝐫 𝐛𝐲 𝐇𝐚𝐧𝐝

Photos from With Injamul Hasan's post 29/01/2024

𝐖𝐡𝐚𝐭 𝐢𝐬 𝐃𝐞𝐯𝐎𝐩𝐬❓

Deep Linux - YouTube 26/01/2024

লিনাক্সে এখন প্রত্যেকটি কাজের জন্য ইউজার ফ্রেন্ডলি ইন্টারফেস আছে, যদি সাধারণ ইউজার হন তাহলে প্রায় কিছুর জন্যই আপনাকে টার্মিনাল ইউজ করতে হবেনা। ছোটখাটো কোন কাজে যদিও করতে হয় তার জন্য হাজারটা ডকুমেন্টেশন পাবেন, সব খালি কপি-পেস্ট এর ব্যাপার।

আগে ড্রাইভার নিয়ে নানান ঝামেলা হতো, আজকাল সেটাও ঘুচিয়ে গেছে। উইন্ডোজের তুলনায় লিনাক্সে আরও বেশি বিল্ট ইন অ্যাপ্লিকেশন থাকে, অফিস সুইট (Libre Office) থেকে শুরু করে টরেন্টিং অ্যাপ পর্যন্ত প্রি-ইন্সটল করা পাবেন। বাড়তি কোন অ্যাপ লাগলে সফটওয়্যার স্টোর থেকে সহজেই ইন্সটল করে নিতে পারবেন।

অ্যাপ্লিকেশন কিংবা OS আপডেট দেয়ার জন্য আগের মতো আর টার্মিনাল কমান্ড দিতে হয়না, এর জন্যও আলাদা GUI অ্যাপ পাবেন।

Ubuntu, Ubuntu varients, Mint ইত্যাদি জেনারেল পারপাস লিনাক্স ডিস্ট্রিবিউশন ব্যাবহারে কোন বিশেষ জ্ঞানের প্রয়োজন হয়না, তবে স্পেশাল পারপাস ডিস্ট্রোগুলোর কথা আলাদা, আপনার সে ঝামেলায় না গেলেও চলবে।

তবে একটা প্রশ্ন করুন নিজেকে, আপনার কি আসলেই লিনাক্সে মুভ করা উচিত এবং এমন কি আছে এতে যার জন্য আপনি উইন্ডোজ ছেড়ে আসবেন? এর সরাসরি উত্তর যদি আপনার কাছে না থাকে তাহলে বুঝবেন আপনার OS পরিবর্তন শুধু শুধু একটা বাড়তি ঝামেলা ছাড়া কিছুই নয়।

এই চ্যানেলে যতগুলা ভিডিও আছে সব বুঝতে গেলেই লিনাক্সের ভিতরের জিনিস নিয়ে যথেষ্ট আইডিয়া হবে।

Deep Linux - YouTube The untold stories and secret recipes of becoming a kernel debugger, this channel is an attempt to provide deep implementation level information about the Li...

Want your school to be the top-listed School/college in Dhaka?

Click here to claim your Sponsored Listing.

Location

Address


Dhaka