ব্ল্যাকবেরী অ্যাপ্লিকেশন ডেভেলপমেন্ট (Blackberry Application Development)

ব্ল্যাকবেরী অ্যাপ্লিকেশন ডেভেলপমেন্ট

Rahim Ullah

আপনি আপনার ব্ল্যাকবেরি ডিভাইসে ব্ল্যাকবেরি অ্যাপ্লিকেশন ব্যবহারের জন্য ব্ল্যাকবেরি ডেস্কটপ ম্যানেজার ব্যবহার করতে পারেন। এছাড়াও , ওয়েব সাইট থেকে ব্ল্যাকবেরী অ্যাপ্লিকেশন ব্যবহারের জন্য ব্ল্যাক বেরি ওয়েব ডেস্কটপ ম্যানেজার সফটওয়্যার ব্যবহার করতে পারেন। নিচের লিঙ্ক থেকে সফটওয়্যারটি ডাউনলোড করতে পারেনঃ http://na.blackberry.com/eng/support/downloads/#tab_tab_web_desktop

ব্ল্যাকবেরী অ্যাপ্লিকেশন ডেভেলপমেন্ট শিখতে চান? আইফোন এপ্লিকেশন ডেভেলপমেন্ট শিখতে চান? ঘাবড়াবেন না – এটা সব সময়ে কঠিন না, যা আপনার প্রথম দর্শনে মনে হতে পারে – যদি আপনি সাধারণ প্রোগ্রামিং ভাল হন। যদি আপনার জাভা প্রোগ্রামিং সম্পর্কে দক্ষতা থাকে, আপনি এক দিনের কম সময়ে তা শিখতে পারবেন। ওয়েবসাইটে ব্ল্যাকবেরী সম্পর্কিত স্বল্প নোটগুলো পড়েন, J2ME এর একটি বই নেন। তারপর সঠিক কোড লেখা শুরু করেন।
আইফোন উন্নয়নের জন্য, আপনার অনুরূপ SDK সফ্টওয়্যার থাকতে হবে। অ্যান্ড্রয়েড প্ল্যাটফর্ম কোন আলাদা বিষয় না। অ্যান্ড্রয়েড ডেভেলপমেন্ট এর জন্য এখানে ক্লিক করুন: http://developer.android.com/

http://salearningschool.com/displayArticle.php?table=Articles&articleID=1083

জাভা বীনঃ সাধারন ধারণা (Java Beans)

জাভা বীনঃ সাধারন ধারণা

জাভা বীন কি?
এটি এক ধরনের প্রযুক্তি। জাভা ব্যবহার করে আপনি একটি স্বাধীন প্ল্যাটফর্ম তৈরি করতে পারেন।

জাভা বীন সম্পর্কে কিছু বিশেষ বিশেষ ধারণা:

১. অন্তর্দর্শন: অন্তর্দর্শন বীন এর মাধ্যমে তাদের প্রপারটিজ, পদ্ধতি এবং ইভেন্ট প্রকাশ করা যায়। বীন দুটি পদ্ধতিতে অন্তর্দর্শন সমর্থন:
১.১: ডিজাইন প্যাটার্নস: ইন্ট্রস্পেচটর ক্লাস বীনের বৈশিষ্ট্য আবিষ্কারের জন্য তাদের ডিজাইন প্যাটার্ন পরীক্ষা করে।

১.২: বীনইনফো ক্লাসের মাধ্যমে বীনইনফো ইন্টারফেস কার্যকর করে।

২. প্রোপার্টিজ: এটি হল বীনের উপস্থিতি এবং আচরণ বৈশিষ্ট্য যা ডিজাইনের সময় পরিবর্তন করা যায়।

৩. বীন অন্যান্য বীনের সাথে যোগাযোগের জন্য ইভেন্ট ব্যবহার করে।

৪. পারসিস্টেন্স সেরিয়ালাইজেশন ব্যবহার করে বীণকে সংরক্ষণ এবং উদ্ধার করতে সক্ষম।

৫. বীন এমন পদ্ধতি প্রদান করে যা অন্যান্য বীন থেকে আনা যায়।

http://salearningschool.com/displayArticle.php?table=Articles&articleID=667&title=Java%20Bean%20:%20Basic%20Idea

কম্পিউটার প্রোগ্রামিং ল্যাগুয়েজে পিএইচপির গুরুত্ব অপরিসীম।

পিএইচপি

পিএইচপি ওয়েব ডেভেলপমেন্ট জন্য নির্মিত হলেও এটি প্রোগ্রামিং ভাষা হিসাবে ব্যবহার করা হয়। পিএইচপি এখন প্রায় ২৪৪ মিলিয়ন ওয়েবসাইট এবং ২.১ মিলিয়ন ওয়েব সার্ভারে ইনস্টল করা আছে। পিএইচপি লাইসেন্সের অধীনে একটি মুক্ত সফটওয়্যার।প্রতিটি অপারেটিং সিস্টেম ও প্ল্যাটফর্মে স্বতন্ত্র শেল হিসাবে পিএইচপি স্থাপন করা যায় এবং ওয়েব পাতা লোড হওয়ার আগে পিএইচপি কোড এইচটিএমএল রুপান্তরিত হয়। পিএইচপি এর সিনট্যাক্স অনেক যেমন সি, জাভা ইত্যাদি। পিএইচপি ওয়েব ডেভেলপারদের দ্রুত এবং সহজে পরিবর্তনশীল ওয়েব পাতা উত্পন্ন করতে সাহায্য করে। যা ইন্টানেট শিল্পের একটি বিশাল বিপ্লব। কম্পিউটার প্রোগ্রামিং ল্যাগুয়েজে পিএইচপির গুরুত্ব অপরিসীম।

কোড কনভেনশন কেন প্রয়োজন?: Why do you need code convention?

লেখকঃ নাদিম ইমন
কোড কনভেনশন কেন প্রয়োজন?
একটি সফটওয়্যারের জীবনচক্রের ৮০% সময়ই রক্ষণাবেক্ষণে ব্যয় করা হয়। খুব কম সময়য়েই মূল লেখক এই রক্ষণাবেক্ষণের কাজটি করে থাকেন। তাই কোড পাঠযোগ্য হওয়া একান্ত প্রয়োজন। কোড কনভেনশন সফ্টওয়্যারকে পাঠযোগ্য করে তুলে।
জাভা কোড কনভেনশন
• একটি স্টেটমেন্টে একই মান বিভিন্ন ভেরিয়েবল এর জন্য নির্ধারণ করা যাবে না।
• একটি ক্লাসের মেথড বা ভেরিয়েবলকে অ্যাক্সেস করার জন্য অবজেক্ট এর পরিবর্তে ক্লাস এর নাম ব্যাবহার করতে হবে।
• উপযুক্ত কারণ ছাড়া কোনো ইনস্ট্যান্সের বা ক্লাস ভেরিয়েবলকে পাবলিক করা যাবে না। যখন ক্লাসটি একটি ডাটা স্টাকচার গঠন করবে, তখন পাবলিক ভেরিয়েবল ব্যবহার করা যাবে।
• দুটি ফাঁকা লাইন: একটি সোর্স ফাইলের বিভাগের মধ্যে, ক্লাস এবং ইন্টারফেস এর মধ্যে।
• একটি ফাঁকা লাইন: মেথডের মাঝে, মেথডের মাঝে লোকাল ভেরিয়েবল এবং প্রথম স্টেটমেন্ট এর মাঝে, একটি ব্লক অথবা লাইন এর পূর্বে, মেথডের ভিতর লজিকাল সেকশন এর মাঝে।
• ফাঁকা জায়গা: কীওয়ার্ড এবং বন্ধনী মধ্যে, যুক্তি তালিকায় কমার পরে , কাস্ট পরে।
• প্রতিটি লাইনে একটি স্টেটমেন্টে থাকা উচিত ।
• প্রতি লাইনে একটি ডিক্লারেশন থাকা বাঞ্ছনীয়।
• লোকাল ভেরিয়েবল যেখানে ডিক্লেয়ার করা হয় সেখানেই ইনিশিয়ালাজ করা উচিত।
• শুধুমাত্র ব্লক এর শুরুতে ডিক্লারেশন রাখা উত্তম।
• একটি মেথডের নাম এবং বন্ধনীর মধ্যে কোন ফাঁকা স্থান রাখা যাবে না।
• মেথড গুলু একটি ফাঁকা লাইন দ্বারা বিভক্ত করতে হবে।
• কোডের মাঝে কমেন্ট করার জন্য চার প্রকার পদ্দতি: ব্লক, একক লাইন, ,ট্রেইলিং এবং লাইনের শেষে।
• ডকুমেন্টেশন কমেন্ট জাভা ক্লাস, ইন্টারফেস , কন্সট্রাকটর , মেথড এবং ফিল্ডের ক্ষেত্র বর্ণনা করা হয়। ডকুমেন্টেশন কমেন্ট করার জন্য /*…*/ ব্যাবহার করা হয়।
• ডকুমেন্টেশন কমেন্ট: প্রতিটি ক্লাস, ইন্টারফেস ও মেম্বারের জন্য একটি কমেন্ট থাকবে। একটি শ্রেণীর প্রতি মন্তব্য , ইন্টারফেস , অথবা সদস্য
• ডকুমেন্টেশন কমেন্ট: শুধু ডিক্লারেশনের আগে প্রদর্শিত হওয়া উচিত।
• প্রতিটি লাইনে ৮০ অক্ষরের বেশী ব্যাবহার করা যাবে না।
• এই লিঙ্কে http://www.oracle.com/technetwork/java/codeconvtoc-136057.html জাভা কোড কনভেনশনের বিস্তারিত পাওয়া যাবে।

Reference:
http://salearningschool.com/displayArticle.php?table=Articles&articleID=742&title=Code%20Conventions%20for%20the%20Java%20Programming%20Language

জাভা JDK 1.0.x এর সাহায্যে ফাইল খোলা এবং পড়া

জাভা JDK 1.0.x এর সাহায্যে ফাইল খোলা এবং পড়া
——————————————————————

১। ফাইল ক্লাস অনুযায়ী ফাইল খুলুন।

২। ফাইল অবজেক্ট ব্যাবহার করে একটি FileInputStream তৈরি করুন।

৩। FileInputStream কে BufferedInputStream এ রুপান্তর করুন যা আপনার ফাইল পড়ার গতিকে অনেক বাড়িয়ে দেবে।

৪। BufferedInputStream কে DataInputStream কনভার্ট করুন যা আপনাকে ফাইল পড়ার ক্ষেত্রে যথেষ্ট স্বাচ্ছন্দ্য প্রদান করবে।

৫। শেষ পর্যন্ত ফাইলটি পরুন।

নিচে প্রক্রিয়াটি দেখান হলঃ

File f = new File(“mydata.txt”);
FileInputStream fis = new FileInputStream(f);
BufferedInputStream bis = new BufferedInputStream(fis);
DataInputStream dis = new DataInputStream(bis);
String record = null;

try {

while ( (record=dis.readLine()) != null ) {
//
// put your logic here to work with “record”
//
}

} catch (IOException e) {
//
// put your error-handling code here
//
}

Ref: http://salearningschool.com/displayArticle.php?table=Articles&articleID=652&title=Opening%20and%20reading%20files%20with%20Java%20JDK%201.0.x

জাভার নিয়মাবলী : Some important Java stuff

http://salearningschool.com/displayArticle.php?table=Articles&articleID=787&title=Java%20Rules

জাভার নিয়মাবলী
জাভা প্রোগ্রামিং ল্যাঙ্গুয়েজ অনুযায়ী প্রোগ্রাম লিখতে গেলে কিছু অবশ্য পালনীয় নিয়ম মেনে লিখতে হয়। কিছু জিনিস আছে যেগুলো করা যাবে না, আবার কিছু জিনিস আছে যেগুলো অবশ্যই মানতে হবে ; এই দুইয়ে মিলেই তৈরি হয়েছে জাভার নিয়মাবলী। নিচে জাভার কিছু গুরুত্বপূর্ণ নিয়ম দেয়া হলঃ

 
• অবজেক্ট (Object) এর ব্যবহার ছাড়া কোনভাবেই একটা ইন্সটান্স ভ্যারিএবল (Instance Variable) অথবা, একটা কোড ব্লককে (Code Block) একীভূত (Synchornize) করা যাবে না – জাভা প্রোগ্রামিং নিয়মমতে এটা পুরোপুরি নিষিদ্ধ।

 
• একটা ওভাররিডেন মেথড (Overriden Method) এর সাথে একটা যাচাই করা এক্সেপ্সন (Checked Exception) যুক্ত করা যাবে না।
• একটা সুপারক্লাস এর শ্রেণীকরণ (Seriallization) সবসময় সম্ভব নাও হতে পারে; কিন্তু, ওই সুপারক্লাস এর যে কন্সট্রাক্টর (Constractor) গুলি আছে তারা অবশ্যই একটা শ্রেণীকরণযোগ্য সাবক্লাস ইন্সটান্স (Seriallizable Subclass Instance) শ্রেণীমুক্ত (Desiriallized)করা হলেও রান করবে।
• লুয কাপলিং (Losse Coupling) – অন্য ক্লাসগুলোকে কোনরকম পরিবর্তন করা ছাড়াই, একটা ক্লাস এর বাস্তবায়ন পদ্ধতি (Implementation ) পরিবর্তন করা সম্ভব। যেমনঃ যদি ক আর খ যদি দুইটি ক্লাস হয় এবং তারা একে অন্যকে একেবারেই ব্যবহার (Use) না করে তাহলে বলা হবে যে তারা কাপল্ড নয়। এখন, যদি ক ক্লাসটি খ কে ব্যবহার করে কিন্তু, খ ক ক্লাসকে ব্যবহার না করে তাহলে বলা হবে তারা লুযলি কাপল্ড (Loosely Coupled)। আর, যদি ক আর খ দুজনেই দুজনকে সমানভাবে ব্যবহার করে তাহলে বলা হবে তারা টাইটলি কাপল্ড (Tightly Coupled)।
এখন, লুয কপলিং এর ক্ষেত্রে আশা করা হয় যে একটা ক্লাস তার সব মেম্বার (Member) গুলোকে প্রাইভেট (Private) রাখবে, আর অন্যটা গেটারস (getters) আর সেটারস (Setters) পদ্ধতিতে সেগুলোকে ব্যাবহার করতে পারবে।
মোটামুটি, এগুলই জাভার গুরুত্বপূর্ণ নিয়মাবলী। এগুলোর হেরফের হলে, প্রোগ্রাম রান করার পর এরর দেখাবে।

By:
Mohammad Saidur Rahman Akanda
Khulna University of Engineering & Technology (KUET)
Department of EEE
Email: sfahim113@gmail.com

এখন আপনিও পারবেন জাভা সফটওয়্যার এডিট করতে ও মাল্টিমিডিট বানাতে : Java and Multimedia

এখন আপনিও পারবেন জাভা সফটওয়্যার এডিট করতে ও মাল্টিমিডিট বানাতে
তনু রহমান

আসস্লামুয়ালাইকুম সবাই কে । অন্য প্রসঙ্গে না গিয়ে আসুন শুরু করা যাক
প্রথমে এই লিঙ্ক থেকে সফটওয়্যার টি ডাউনলোড করুন : http://vube.com/Walter+Alexandre+ONE+MAN+BAND/nhZzKVEQU1/L/vote?t=p&p=ggo
আপনি যদি মোবাইল ব্যাবহারকারী হন তাহলে এখান থেকে: http://www.mediafire.com/download/pgnuzbr7aqk6ca6/Blue_ftp_v60.jar
এবার সফটওয়্যার টি ওপেন করে উপরের ফাইল টা এক্সট্রাক্ট করুন ,যদি নোকিয়া মোবাইল হয় তাহলে যে কোন অ্যাপ্লিকেশান এরOption>application access> data access> read user data > ask first time এবং Option>application access> data access>add and edit data > ask first time K‡i w`b এটা করলে বারবার yes চায়না। কোন কোন নোকিয়া সেটে ask first time নাও হতে পারে আমার নোকিয়া X2-00 হয়েছে।
এবার নিচের ধাপ অনুসরন করুন
ধাপ 1 : প্রথমে আমি যেসব সফটওয়্যার দিয়েছি সেখান থেকে minihalo নামক সফটওয়্যার টি open করুন। আপনি যে জাভা সফটওয়্যার এডিট করতে চান তার extention আগে থেকে যেন .zip থাকে মানে .jar থেকে .zip। আপনি blueftp সফট এর মাধ্যমে .zip করে দেবেন ব্যাস এবার minihalo এর মাধ্যমে জাভা সফটওয়্যার টি ভাঙ্গুন। দেখুন ঐ সফটওয়্যার এর নামে একটা ফোল্ডার তৈরি হবে। আপনি চাইলে ucweb টা দিয়ে সফটওয়্যার ডাউনলোড করে কাজ করতে পারেন এটা দিয়া আপনি snapshoot ও নিতে পারবেন। আপনি আরেকটি পদ্ধতিতে জাভা সফটওয়্যার ভাঙ্গতে পারেন .zip extention দেয়ার blueftp ওপেন করে জিপ ফোল্ডার টিতে ঢুকে সব ফাইল সিলেক্ট করে আনজিপ করলে ও হবে ।

ধাপ ২: আপনি যদি ঐ সফটওয়্যার এর নাম পরিবর্তন করতে চান তাহলে moby explorer নামক যে সফট তা আছে সেটা ওপেন করুন। এবার ঐ সফটওয়্যার এর META-INF ফোল্ডার এ MANIFEST.MF নামক যে ফাইল টি আছে তা option থেকে text editor এর মাধ্যমে এডিট করুন ব্যাস ২য় ধাপের কাজ শেষ।
ধাপ ৩: আপনি ইচ্ছা করলে সফটওয়্যার বিভিন্ন picture বা ইমেজ পরিবর্তন করতে পারেন blueftp এর মাধ্যমে। আপনি ঐ সব পরিবর্তন করার সময় যেটাকে পরিবর্তন করবেন সেটার নাম এবং আপনারটির নাম একই করে দিন তারপর আপনার পিকচার টি replece করে দিন আর দেখুন মজা। সফটওয়্যার class পরিবর্তন করতে চাইলে class_translator দিয়ে করুন। class পরিবর্তন করার পর save করলে leave a backup file অপশন টা আসলে no করে দিন কাজ শেষ ।
ধাপ ৫: সবকিছু করা শেষ হলে blueftp এর মাধ্যমে ঐ ফোল্ডার ভেতর থাকা সব কিছু সিলেক্ট করে compress to jar করুন তারপর _jar কেটে দিয়ে .jar করে অ্যাপ্লিকেশান টা চালান। আর উপভোগ করুন আপনার এডিট করা অ্যাপ্লিকেশান গুলোর।
Multimidlet ধাপ : আপনি প্রথমে যে সব সফটওয়্যার Multimidlet বানাবেন তার শেষে .zip extention দিন । এবং আপনার মেমোরি কার্ড এর root এ অর্থাৎ e:\ তে icon.png নামক একটা পিকচার দিয়ে রাখতে হবে । এরপর Multimidlet.jar নামক যে সফটওয়্যার টি আছে সেটা ওপেন করুন । এবার আপনার .zip এর অ্যাপ্লিকেশান গুলো সিলেক্ট করে view list থেকে start Merge করুন । নাম পরিবর্তন করবেন না । তারপর আবার start Merge এ ক্লিক করুন শেষ হলে মেমোরি কার্ড এর ভেতর Multimidlet নামক ফোল্ডার এর ভেতর দেখুন আপনার করা Multimidlet টি আছে । নাম হতে পারে test.jar_jar blueftp এর মাধ্যমে test.jar করে দিন আর উপভোগ করুন মজা । তবে আপনাকে একটু সাবধান থাকতে হবে, আপনার সফটওয়্যার গুলার মধ্যে যদি কনো সমস্যা থাকে তাহলে Multimidlet টিতে সমস্যা দেখা দেবে।

http://salearningschool.com/index.php?table=Articles&categoryID=32&category=Java

আজ আমি আপনাদের জানাবো জাভা অবজেক্ট কিভাবে Thread তৈরি করা হয় এবং এর ব্যবহার।

বলা চলে প্রযুক্তি ছাড়া আমাদের জীবন অচল। আর একটি আধুনিক ফিচার ফোন হল তার একটি উদাহরন। আর ফিচার সমৃদ্ধ ফোন নিয়ে আলোচনা করতে গেলে যে বিষয়টি সামনে আসে তা হল অ্যাপলিকেশন অথবা জাভা।

 
আর শুধু জাভা সমপর্কে বলতে গেলে কিছু খুটিনাটি বিষয় আসে তা হল কিভাবে এই এই অ্যাপলিকেসন গুলো তরি হয়। তাই চিন্তার কিছু নেই । আজ আমি আপনাদের জানাবো জাভা অবজেক্ট কিভাবে Thread তৈরি করা হয় এবং এর ব্যবহার।

 
তাই দেখে নেওয়া যাক :

// Thread তৈরী করা
public class MyCustomThread extends Thread {
//variables
int someVariable;
String anotherVariable;
boolean threadRunFlag;
public MyCustomThread(int parameter, String parameterString){
this.someVariable=parameter;
this.anotherVariable=parameterString;
}

@Override
public void run(){
while(threadRunFlag){
//do something
try{

}catch(Exception ex){

}

}

}

জাভা প্রোগ্রামিংয়ের Thread তৈরি ও ব্যবহারের সংক্ষিপ্ত বিষয় জেনে নেই:

আধুনিক যুগে পরিবর্তিত হচ্ছে সব কিছু আর এ সব কিছুর মাঝে থেমে নেই তার অনাকাঙ্ক্ষিত চাহিদা গুলো। আর সব কিছুর মাঝে অন্যতম একটি বিষয় আছে সেটা হল প্রযুক্তি। আর আমরা সেটা উপলব্ধি ও করি সব সময়। আর বর্তমান এই প্রযুক্তি নির্ভর সময়ে থেমে নেই কিছু। তাই বলা চলে প্রযুক্তি ছাড়া আমাদের জীবন অচল। আর একটি আধুনিক ফিচার ফোন হল তার একটি উদাহরণ। আর ফিচার সমৃদ্ধ ফোন নিয়ে আলোচনা করতে গেলে যে বিষয়টি সামনে আসে তা হল অ্যাপলিকেশন অথবা জাভা।

 
আর শুধু জাভা সম্পর্কে বলতে গেলে কিছু খুঁটিনাটি বিষয় আসে তা হল কিভাবে এই এই অ্যাপলিকেশন গুলো তরি হয়। তাই চিন্তার কিছু নেই । আজ আমি আপনাদের জানাবো জাভা অবজেক্ট কিভাবে Thread তৈরি করা হয় এবং এর ব্যবহার।
তাই দেখে নেওয়া যাক :
// Thread তৈরি করা
public class MyCustomThread extends Thread{
//variables
int someVariable;
String anotherVariable;
boolean threadRunFlag;
public MyCustomThread(int parameter, String parameterString){
this.someVariable=parameter;
this.anotherVariable=parameterString;
}
@Override
public void run(){
while(threadRunFlag){
//do something
try{
sleep(timeInMillis);
}catch(Exception e){
//do something
}
}
}
public void stopThread(){
threadRunFlag=false;
}
}

 
উল্লেখিত সকল বিষয় গুলো Thread এর object হিসাবে ব্যবহার করতে হবে।

 
এবার আসুন Thread কিভাবে ব্যবহার করতে হয়।
// Thread ব্যবহার করা :
import necessasy.packages;
public class NewClass {
//Class body
public static void main(String[] args){
MyCustomThread aThread=new MyCustomThread(intParameter, stringParameter);
MyCustomThread aThread2=new MyCustomThread(intParameter2, stringParameter2);
aThread.start();
aThread2.start();

//do something
aThread.stopThread();
aThread.stopThread2();
}
}
উল্লেখিত সকল বিষয় সম্পর্কে ভাল ভাবে ব্যবহার করলে আপনি Thread তৈরিও ব্যবহার ভাল ভাবে অনুশীলন করা যাবে। তাই চেষ্টা করুন । আসা করি ভাল ফলাফল পাবেন

2. 2. Java
http://salearningschool.com/index.php?table=Articles&categoryID=32&category=Java
উপরে ভিত্তি করে task লেখা ।

পিএইচপি (PHP), মাইএসকিউএল (MySQL), জাভা (Java)

পিএইচপি এর পুরো মানে হল হাইপারটেক্সট প্রিপ্রসেসর। ওপেন সোর্স সফটওয়্যার হওয়ায় এটি বিনামূল্য ডাউনলোড ও ব্যবহার করা যায়। পিএইচপি তে কাজ করার জন্য এইচটিএমএল এবং জাভাস্ক্রিপ্ট সম্বন্ধে ধারনা থাকা দরকার।
মাইএসকিউএল হল একটি ডাটাবেজ সার্ভার। এটি সকল এসকিউএল সমর্থন করে। পিএইচপি এর মত এটিও বিনামূল্য ডাউনলোড ও ব্যবহার করা যায়।
ডটনেট একটি মাইক্রোসফট এর ওয়েব সার্ভিস কৌশল, যেটা ইনফর্মেশন, লোকজন,সিস্টেম এবং বিভিন্ন প্রকার যন্ত্রের মধ্যে সংযোগ করে সফটওয়্যার এর মাধ্যমে । এটা বিভিন্ন ধরনের কন্ট্রোল বা ফর্ম প্রদান করে, ফলে অত্যন্ত দ্রুত ও সহজে অ্যাপ্লিকেশান তৈয়ারি করা যায়।
জাভা দ্রুত, নিরাপদ, এবং নির্ভরযোগ্য প্রোগ্রামিং ভাষা । এটা কোন প্লাটফর্ম এর উপর নির্ভর নয়। তাই জাভাতে তৈয়ারি যেকোনো অ্যাপ্লিকেশানকে যেকোনো প্লাটফর্ম চালানো যায়।

http://en.wikipedia.org/wiki/Php
http://en.wikipedia.org/wiki/MySQL
http://www.computerhope.com/jargon/n/dotnet.htm
http://en.wikipedia.org/wiki/Java

mobinmama0003@gmail.com

MongoDB Data Modelling . MongoDB ডেটা মডেলিং

MongoDB Data Modelling : MongoDB ডেটা মডেলিং
আদনান নাহিদ
সরকারি তিতুমীর কলেজ ।
MongoDB ডেটায় একটি নমনীয় স্কিমা আছে, যার ফলে একই ধরনের ডকুমেন্টে একই ধরনের গঠনের প্রয়োজন হয় না এবং সংগহে থাকা কমন ডকুমেন্টগুলো বিভিন্নভাবে রাখা যায় ।

MongoDB তে স্কিমা ডিজাইন করার সময় কিছু বিবেচ্য বিষয় :
 ব্যবহারকারীর প্রয়োজনীয়তা অনুযায়ী আপনার স্কিমা ডিজাইন ।
 যদি আপনি চান তাহলে একই ডকুমেন্টে অবজেক্টগুলো একত্রে ব্যবহার করতে পারবেন । অন্যথায় সবগুলো আলাদা করুন (তবে সেখানে একত্রীকরণের প্রয়োজন হয়না এটি নিশ্চিত করুন) ।
 ডাটাগুলো Duplicate বা কপি করুন (কিন্তু সীমাবদ্ধ)। কারণ ডিস্কের স্থান সস্তা সময় গণনার তুলনায় ।
 লেখার সময় একত্র করুন, পড়ার সময় না ।
 ঘন ঘন ব্যবহারের ক্ষেত্রে আপনার স্কিমাগুলো অনুকূলে রাখুন ।
 জটিল স্কিমা একত্রিত করবেন না বা আলাদা রাখুন ।

উদাহরণ :
ধরুন একজন ক্লায়েন্ট তার ব্লগ ওয়েব সাইটের জন্য একটি ডাটাবেস ডিজাইনের প্রয়োজন এবং RDBMS এবং MongoDB স্কিমা নকশা মধ্যে পার্থক্য দেখতে চায় । তাহলে ওয়েবসাইটটি নিম্নলিখিত প্রয়োজনীয়তা অনুসারে হবে ;
 প্রতিটি পোস্টের একটি অনন্য শিরোনাম, বিবরণ এবং URL হবে ।
 প্রতিটি পোস্টে এক বা একাধিক ট্যাগ করতে পারেন ।
 প্রতিটি পোস্টে তার প্রকাশক এবং মোট লাইকের সংখ্যা হবে ।
 প্রতিটি পোস্টে comments কারীর নাম, বার্তা, তথ্য-সময় এবং লাইকের সংখ্যা হবে ।
 প্রতিটি পোস্টে শূন্য বা তার বেশি comments বা মন্তব্য হতে পারে ।

RDBMS উপরোক্ত প্রয়োজনীয়তা অনুসারে স্কিমা ডিজাইন করার জন্য সর্বনিম্ন তিনটি টেবিল থাকবে ।

MongoDB স্কিমা ডিজাইন করার সময় একটি কালেকশান পোস্ট হবে এবং এর কাঠামো হবে নিম্ননুসারে ;
{
_id: POST_ID
title: TITLE_OF_POST,
description: POST_DESCRIPTION,
by: POST_BY,
url: URL_OF_POST,
tags: [TAG1, TAG2, TAG3],
likes: TOTAL_LIKES,
comments: [
{
user:’COMMENT_BY’,
message: TEXT,
dateCreated: DATE_TIME,
like: LIKES
},
{
user:’COMMENT_BY’,
message: TEXT,
dateCreated: DATE_TIME,
like: LIKES
}
]
}

এখন RDBMS এ ডাটা দেখানোর সময় আপনাকে 3 টি tables join করতে হবে এবং ডাটা শুধুমাত্র একটি সংগ্রহ থেকে দেখাতে হবে ।