যারা এবার জাভা বা এডভান্স জাভা করতেছেন...
জেটব্রেইন এর প্রোডাক্ট গুলা আপনি যতদিন স্টুডেন্ট ততদিন ফ্রি চালাইতে পারবেন...
apply for the student license with university mail (xx-xxxxx-xx@students.aiub.edu): https://www.jetbrains.com/community/education/#students
install the toolbox app: https://www.jetbrains.com/toolbox-app/
কিন্তু প্রথমত,
-
জেটব্রেইন কি জিনিস? ... জেটব্রেইন আসলে কম্পানিটার নাম, যারা মূলত IDE বানায় java, c/c++, php হাবিজাবির জন্যে...
-
IDE কি? ... Integrated Development Environment... মানে বেসিক্যালি ডেভেলপমেন্ট রিলেটেড পুরা ওয়ার্কফ্লো একটা সিঙ্গেল জায়গাতেই করতে পারতেছেন। codeblocks, vscode ও IDE বলাই যায়, কিন্তু তাতে অনেক ফিচার থাকেনা... এই না থাকা কতটুক ম্যাটার করে, কিংবা করেনা তা ডিবেটেবল; কিন্তু যাদের র্যাম ৮ জিবির কম, আর প্রসেসর তেমন সুবিধার না, তাদের জন্যে vscode বেশি প্রেফারেবল, কারণ intellij অনেকটা রিসোর্স খেয়ে নিবে। তাও কেউ চাইলে ট্রাই করে দেখতে পারেন।
-
ইন্সটল দিলাম, তারপর কি? ... create a gradle or maven project...(সেকেন্ড পিক)
-
gradle/maven wtf are they!? ... এগুলা মূলত আপনার প্রোজেক্টের দেখাশুনা করতে ইউজ হয় (too much simplified lol) ... ধরেন আপনি একটা লাইব্রেরি ইউজ করতে চাচ্ছেন, তা কিভাবে করতে পারেন? অবভিয়াস্লি সেই লাইব্রেরির কোড টা আপনার প্রোজেক্টে এড করা লাগবে সামহাউ। তো সেই কোড টা টাইপিকালি .jar ফরম্যাটে প্যাকেজ করা হয়। সেই প্যাকেজ টা আপনি ম্যানুয়ালি গুগল করে ডাউনলোড করে আপনার পোজেক্ট ডিরেক্টরিতে কপি করে রাখতে পারেন... কিন্তু এই ম্যানুয়াল কাজ টা অবভিয়াস্লি স্কেলেবল না। আপনার যদি ১০ টা লাইব্রেরি ইউজ করতে হয়, আপনি কি প্রতিটা গুগল করে করে বারবার ডাউনলোড করবেন? আর সেই লাইব্রেরির নতুন ভার্শন আসলে কি করবেন?
তো যাকগে... gradle or maven এই সব বিষয়াদি সহ আরো অনেক কিছু সহজ করে দেয়। এখন এই দুইটার কোনটা ইউজ করবেন তা আপনার ব্যাপার... আমি পারসোনালি gradle প্রেফার করি। কিন্তু এজ আ বিগিনার, আপনার কাছে এই দুইটার তেমন বড় কোনো ডিফ্রেন্স চোখে পড়ার কথা না... ফ্যাকাল্টিরা maven এ বেশি খুশি হবে হয়ত।
পোস্ট টা করতেছি মূলত বর্তমানে জাভা কোর্স গুলাতে প্যাথেটিক অবস্থা দেখে। ৪ মাষের একটা কোর্সে ১-২ সপ্তাহ যদি jdk ইন্সটল এ লেগে যায়, আর সম্পূর্ণ কোর্সে বারবার প্রতি কোড চেঞ্জের পর টার্মিনালে গিয়ে javac - java সাইকেলে সময় নষ্ট করতে হয়, শেষ পর্যন্ত আর অনেকের কোনো আগ্রহ থাকেনা।
- যারা advance java করতেছেন... https://start.spring.io/ এটা মিডের পর কাজে লাগবে। যদি ফ্যাকাল্টি অন্য কোনো এপ্রোচ নেয় "spring" শিখাতে, এই লিঙ্ক টা পয়েন্ট আউট করে দিলে সেই ফ্যাকাল্টিরও অনেক সময় বাঁচবে
খুচরা আলাপঃ
-
plugins: monokai pro theme, atom material icons
-
if you get tired of writting getter setters for every class members, try lombok https://www.baeldung.com/intro-to-project-lombok
-
try to use latest (java 17) features... obviously, you should focus more on design patterns or other aspects... but this search for newest things may help you find better learning resources and keep you going
feel free to ask any question or query in the comments, or in https://discord.gg/tUZMxfky
#okthxbye goodnight
18-2 @audacioustux