Tag Archives: java

আমার ডেভেলপ করা ডেস্কটপ-বেইসড জাভা প্রজেক্ট “MyWord Dictionary”

এখন আর কোন পোস্ট করাই হয় না। যা টুকটাক সবই ফেইসবুকে শেয়ার করে ফেলা হয়। এর জন্য আলাদা করে পোস্ট লিখে সেটা আবার ব্লগে পোস্ট করাটা কষ্টকর মনে হয়। আবার ব্লগটা খালিও রাখা যায় না। তাই ভাবছিলাম কিছু একটি পোস্ট করবো। এদিকে কয়েক বছর পর আবার জাভা প্রোগ্রামিং ল্যাঙ্গুয়েজ নিয়ে স্টাডি শুরু করেছি। আবার সেই বেসিকটাই শিখতে বসেছি। একেই বলে দূরত্ব। কোন কিছু থেকে বেশ কিছুদিন দুরে থাকলে তার সাথে সম্পর্কটা কমে যায়। জানিনা মানুষের সাথে মানুষের সম্পর্কের ক্ষেত্রে এই নিয়ম কার্যকর কিনা ! 🙂

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

splash screen of myword dictionary

MyWord Dictionary এর Splashscreen

Download : https://drive.google.com/open?id=0BwasIjIvyEvZRURaaEU4TTJia0E

ডাটাবেজ রিলেটেড প্রজেক্ট করবো তাই ডাটাবেজ খুঁজছিলাম নেটে। নতুন করে ডাটা টাইপ করতে অনেক সময় লেগে যাবে। পেয়েও গেলাম ডিকশনারি এর জন্য ডাটাবেজ কিছু। ইংরেজি থেকে বাংলা, বাংলা থেকে ইংরেজি ও ইংরেজি থেকে ইংরেজি। যা নিয়ে যদিও এমন কোন ডিকশনারি ডেস্কটপ সফটওয়্যার ডেভেলপ করা নাই আমি যা বুঝলাম। তাই ভাবলাম এগুলো ব্যবহার করেই প্রজেক্টটা করি। ইংরেজি থেকে ইংরেজি ডাটাবেজটা ওপেন-সোর্স যা গুটেনবার্গ এর সাইটে দেয়া আছে। তবে ডাটাবেজগুলো SQLite এ ছিল না। আমার কনভার্ট করে নিতে হয়েছিল।

এখানে আমি JDK8, NetBeans8.2 এবং SQLite এর দুইটি ডাটাবেজ ব্যবহার করেছি। জাভা Swing নিয়ে কাজ করেছি। যদিও JavaFX এ অনেক উন্নতমানের UI Design করা যায়। তবে এই মুহূর্তে JavaFX টা ধরবো না। যদিও হালকা করে একটু Touch দিয়েছিলাম। মানে ছোটখাটো স্যাম্পল প্রজেক্ট করেছিলাম। আর জাভা কে ডেস্কটপ সফটওয়্যার এর জন্য বাছাই করেছি কারণ আমার সাবজেক্ট ছিল এটা। করতেই হয়েছিল একসময়।

আমি ডেস্কটপ সফটওয়্যারের জন্য Java, ওয়েবের জন্য যেগুলো ব্যবহার করতেই হয় আর এন্ড্রয়েড এ্যাপ ডেভেলপিং এর জন্য iOnic টা ব্যবহার করি। এগুলো আমার ভালো লাগে।

কেউ অনেকদিন কথা বলতে না পারলে, তাকে যদি কথা বলতে বলা হয় অনেক সময় চুপ থাকার পর বকবক করতেই থাকে। আমিও ব্লগ লিখি না অনেক দিন হয়েছে। তাই বকবকটা একটু বেশি করে ফেললাম মনে হয়। 🙂

jQuery কি এবং এই জেকোয়ারী ব্যবহার করে Searchable List-Based এপ্লিকেশান ডেভেলপ করা

জেকোয়ারী (jQuery) কি ?

মূলত জোকোয়ারী (jQuery) একটি ফ্রেমওয়ার্ক যা ওয়েব-ডেভেলপিং এর ব্যবহার করা হয়ে থাকে। এটি একটি জাভাস্ক্রিপ্ট লাইব্রেরী, যাতে অনেক ফিচার রয়েছে যা দিয়ে খুবই দ্রুত কাজ সম্পন্ন করা যায়। এটি ছোট এবং অনেক দ্রুত কাজ করে। বড় বড় কাজ যার জন্য অনেক কোড লেখার প্রয়োজন পরে তা অনায়াসেই অল্প কিছু কোড ব্যবহার করেই সম্পন্ন করা যায় এই জেকোয়ারী ব্যবহার করার মাধ্যমে।

এটি HTML ডকুমেন্টের সাথে যুক্ত হয়ে কাজ করে থাকে। এটি ইভেন্ট হেল্ডেলিং থেকে শুরু করে এনিমেশনের কাজ এবং এজ্যাক্স এর সাথে একত্রে  কাজ করতে পারে খুবই সহজে।

জেকোয়ারী সেই সব প্রোগ্রামারদের কাজের ধারার পরিবর্তন এনেছে যারা জাভাস্ক্রিপ্ট নিয়ে কাজ করে।

 jQuery লাইব্রেরীতে যে সকল ফিচার রয়েছে সেগুলো হচ্ছে :

.    HTML/DOM manipulation;
.    CSS manipulation;
.    HTML even methods;
.    Effects and animation;
.    Ajax;
.    Utilites.
এছাড়াও জেকোয়ারীর প্লাগইনস রয়েছে যা দিয়েই অনায়াসেই অন্যান্য কাজও করতে সক্ষম এটি।

jQuery ব্যবহার করে list-based এপ্লিকেশন ডেভেলপ করা

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

 প্রথমেই দেখা নেয়া যাক আউটপুট কেমন হবে :

jQeury ListView

ফাইনাল রেজাল্ট

‘এলিনের ভুবন’ ব্লগ এখন এন্ড্রয়েড ফোনে …

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

Splash Screen

Splash Screen

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