আপনি যদি ভবিষ্যতের প্রমাণ হতে চান তবে আমি আপনাকে যে সর্বোত্তম পরামর্শ দিতে পারি তা নিজেকে কোনও প্রযুক্তিতে আবদ্ধ করা নয়।
সুতরাং অন্ধভাবে এপিআই শিখবেন না। তারা কীভাবে গর্ভধারণ করে তা শিখুন। পর্দার পিছনে দর্শন কি? তাদের সুবিধা এবং ত্রুটিগুলি কী কী? সাধারণভাবে সফ্টওয়্যারটি ভাবেন, কোনও নির্দিষ্ট প্রযুক্তি নয়।
আপনি ভাল প্রোগ্রাম ধারণায়ও কাজ করতে পারেন, ওওপি এবং এওপিতে যাওয়া একটি ভাল পছন্দ আইএমও। তবে কেবল প্রক্রিয়াটি বোঝেন না, প্রক্রিয়াটির পিছনে দর্শনে সত্যই কাজ করুন।
ডেটা স্ট্রাকচার এবং অ্যালগরিদমগুলির মতো সাধারণ কম্পিউটার বিজ্ঞানকে অবহেলা করবেন না কারণ তারা ক্রস প্রযুক্তির জ্ঞান যা সর্বদা দরকারী।
ভাল অনুশীলনের জন্য যান। আপনার কাছে প্রায়শই কিছু করার কয়েকটি ডজন উপায় থাকে তবে সেগুলির বেশিরভাগটি বকাঝকা: বাগ প্রবণ, রক্ষণাবেক্ষণ করা শক্ত, পরে বা অন্য প্রোগ্রামার দ্বারা বোঝা শক্ত ইত্যাদি etc । । সাধারণত, কোডটি লেখার চেয়ে পড়া আরও শক্ত। সুতরাং পাঠ্যকে আরও সহজ করার জন্য কীভাবে লেখার জন্য আরও কিছুটা প্রচেষ্টা ব্যয় করবেন তা শিখুন (কারণ আপনি লেখার চেয়ে কোড বেশি পড়বেন)।
ডিবাগ করার কার্যকর কৌশলগুলি (লগ এবং ডিবাগারের স্মার্ট ব্যবহার) এবং পরীক্ষা (কীভাবে কোডটি লিখতে হবে যা ইউনিটটি সহজেই পরীক্ষিত হতে পারে এবং কীভাবে এই পরীক্ষাগুলি স্বয়ংক্রিয় করতে হয়) শিখুন।
তারপরে, আপনার একটি সাধারণ প্রযুক্তি পটভূমি প্রয়োজন। আমি খুব বিস্তৃত জ্ঞানের কথা বলছি, যেমন কোনও প্রসেসর কীভাবে কাজ করে (ক্যাশে মিস বা শাখার পূর্বাভাসটি ভাল শুরু হয়), ইউনিক্স সিস্টেম সম্পর্কে, আইপি, টিসিপি এবং ইথারনেট ইত্যাদির মতো নেটওয়ার্ক প্রোটোকল সম্পর্কে about । ।
শেষ পর্যন্ত, কীভাবে শিখতে হবে তা শিখুন। আপনি যদি শিখতে জানেন তবে আপনি খাপ খাইয়ে নিতে পারেন।
চাকরী সন্ধানের জন্য আপনার নির্দিষ্ট প্রযুক্তিতে কিছু শক্ত জ্ঞান প্রয়োজন, তবে সেগুলি সত্যই দ্রুত পুরানো হয় (উদাহরণস্বরূপ সিওবিওএল সম্পর্কে ভাবেন, বা আইই / নেটস্কেপ যুদ্ধের সময় ওয়েব প্রোগ্রামিং)। সুতরাং ভবিষ্যতের প্রমাণ হওয়ার জন্য তাদের উপর নির্ভর করবেন না। তারা ভাড়া নেওয়ার মূল বিষয় হবে, তবে কোনও দুর্দান্ত প্রোগ্রামার কী করে এবং আপনার দক্ষতা কী সময়ের সাথে টেকসই করে তোলে তা নিশ্চিতভাবে তা নয়।
সম্পাদনা: আপনি যদি এখনই শুরু করছেন, আপনার অবশ্যই কিছু করা উচিত। যেকোনো কিছু. টেট্রিস বা সাপের মতো একটি খেলা একটি ভাল শুরু এবং মজাদার। যদি আপনি জিনিসগুলি সম্পন্ন না করেন তবে আপনি শেখার পক্ষে অনেক বেশি সময় ব্যয় করবেন এবং আপনি যা শিখেন তা পুরোপুরি বুঝতে প্রয়োজনীয় অভিজ্ঞতাটি পাবেন না।
আসুন নকশার নিদর্শনগুলির সাথে একটি উদাহরণ স্থাপন করি। ডিজাইনের ধরণগুলি দুর্দান্ত এবং আপনার অবশ্যই এটি ব্যবহার করা উচিত। তবে অতিরিক্ত ব্যবহার করা হলে তারা আপনার কোডটিকে জটিল এবং বোঝা শক্ত করে তুলবে। ডিজাইনের প্যাটার্নটি কী তা সমাধান করে এবং এটি সমাধান করার চেষ্টা করার সময় বা তার পার্শ্ব প্রতিক্রিয়াগুলি কিছুটা হারাতে আপনাকে সমস্যার মুখোমুখি হতে হবে। কোড বাড়ার সাথে সাথে ডিজাইন নিদর্শনগুলিকে অবশ্যই সময়ের সাথে সাথে ছোট রিফ্যাক্টরিং হিসাবে ব্যবহার করতে হবে। আপনি যখন জানবেন যে যখন কোনও ডিজাইনের প্যাটার্নটির প্রয়োজন হয় তখন এর সুবিধাটি এর কোড ব্যবহারের দ্বারা প্রেরিত কোড জটিলতার চেয়ে বড় হয়। এর জন্য অভিজ্ঞতা দরকার।
তাই নিশ্চিতভাবেই, কাজগুলি করুন, সেগুলি আপনার ভুল থেকে শিখুন। আমি আরও জেদ করতে পারি না: জিনিসগুলি সম্পন্ন করুন !