Friday, November 30, 2018

Android কি ও কিভাবে ? ( Part-1)

  What is Android ?

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

মূলত , এই  Android প্রোজেক্ট এর উদ্দেশ্য হলো ,তারা এটাকে  real-world product হিসেবে গড়ে তুলবে যা খুবই ইউজার ফ্রেন্ডলি হবে । Android এর বেশ কয়েকটা code name ইতিমধ্যে চলে গেছে , যেমনঃ-  Lollipop, Kitkat, Jelly Bean,Froyo, Ecliar, Donut etc ।।

এই  Android সিস্টেম  প্রথমে  শুধু গুগল দ্বারা ডেভলপড হলেও , পরে  OHA (Open Handset Alliance) এর তত্বাবধায়নে চলে আসে ২০০৭ সালে , যদিও  প্রায় ৮৪ টি কম্পানি নিয়ে  এই OHA গুগলই প্রতিষ্ঠা করে ।

অ্যান্ড্রোয়েড এর অনেক সুযোগ সুবিধের জন্য , এটা এখনো অনেক জনপ্রিয় । বিশেষ করে বিভিন্ন ক্লাসের মানুষ তাদের সাধ্য অনুযায়ী , এর স্মার্ট ফোন ব্যবহার করতে পারে !! বিভিন্ন ধরনের অ্যাপ্লিকেশন রয়েছে  এই   Android সিস্টেম এ ,  তার মধ্যে উল্লেখযোগ্য অ্যাপ এর ধরণগুলো    হলো ---

                                      
    Entertainment
    Tools
    Communication
    Productivity
    Personalization
    Music and Audio
    Social
    Media and Video
    Travel and Local etc.

 গুগলের  Android Incorporation প্রথম প্রধান যে ইমপ্লয়িরা ছিলেন তারা হলেন , Andy Rubin, Rich Miner, Chris White and Nick Sears.তাদের চিন্তাধারা মূলত ক্যামেরা কেন্দ্রিক ছিলো , তারা ক্যামেরা ভিত্তিক সিস্টেম বানানোর কথা ভাবছিলেন ,সেই সময় তারা তাদের দূরদরশি'তার পরিচয় প্রদান করেন !! তারা চিন্তা করেন এক সময় ক্যামেরার প্রয়োজন ফুরিয়ে যাবে আর সেই স্থান মোবাইলের ক্যামেরা সিস্টেম দখল করে নিবে ! ! তখন তারা তাদের চিন্তা পরিবর্তন করে মোবাইলের জন্য এই  Android সিস্টেম ডেভেলপ করেন ।  এই  Android নামটা মূলত  Andy Rubin এর ডাকনাম ছিলো , তার গুগলের কলিগরা তার রোবোটের প্রতি অতিরিক্ত আগ্রহের ফলে এই নামটা রেখেছিলো , যা আজ পুরো একটা মোবাইল অপারেটিং সিস্টেম এর নাম হয়ে গছে ! ২০০৭ সালে , গুগল প্রথম
android OS(অপারেটিং সিস্টেম) এর কথা announce করে , তারপর ২০০৮ সালে   HTC প্রথম অ্যান্ড্রোয়েড মোবাইলের সূচনা করেন !!


নীচে কিছু  Android এর ভার্সন ও  API Level উল্লেখ করা হলো !!!



Version              Code name       API Level
1.5               Cupcake            3
1.6               Donut            4
2.1               Eclair            7
2.2               Froyo            8
2.3               Gingerbread      9 and 10
3.1 and 3.3       Honeycomb     12 and 13
4.0               Ice Cream Sandwitch    15
4.1, 4.2 and 4.3   Jelly Bean          16, 17 and 18
4.4               KitKat            19
5.0               Lollipop            21
6.0               Marshmallow            23
7.0               Nougat           24-25
8.0               Oreo                   26-27


এবার আমরা  Android এর আরকিটেকচার নিয়ে হালকা কিছু কথা বলবো , ধারণ দেবার জন্য  ।।     android architecture  কে পাচটা ভাগে ভাগ করা যায় :

    ১)  linux kernel
   ২)   native libraries (middleware),
   ৩)  Android Runtime
   ৪)  Application Framework
  ৫)  Applications



  এবার আমরা , এগুলো নিয়ে সামান্য আলোচনা করবো ----

1) Linux kernel

এটা  Android আর্কিটেকচার এর একদম মূল হিসেবে ধরা হয় . device drivers, power management, memory management, device management and resource access এগুলো'র জন্য  Linux kernel ই মূল রিস্পন্সিবল !!

2) Native Libraries

এটা ঠিক  Linux kernel এর উপরেই থাকে , অনেক ধরনের Native libraries আছে  যেমন, WebKit, OpenGL, FreeType, SQLite, Media, C runtime library (libc) etc. WebKit এর জন্যই বিভিন্ন ব্রাউজার আমরা সাপোর্ট করাতে পারি , SQLite মুলত ডেটাবেইস এর কারণে ব্যবহার হয় , Media এর কারনেই বিভিন্ন অডিও ভিডিও রেকরডিং আমরা করতে পারি , যাই হোক এরকম অনেক উদাহরণই দেয়া যাবে ।

3) Android Runtime

এটা খুবই গুরুত্বপূর্ণ একটা অংশ , এখানে  core libraries and DVM (Dalvik Virtual Machine) আছে যা একটা  Android অ্যাপ্লিকেশন রান করে ,অনেক সময় একটা অ্যাপ হ্যাং হয়ে যায় অথবা , চলতে সময় নেয় তখন বুঝতে হবে  DVM ফাস্টভাবে কাজ করতে পারছে না !! যারা জাভার সাথে পরিচিত , তারা অবশ্যই JVM (Java Virtual Machine) এর নাম শুনেছো , এটাও সেরকমই একটা ভার্চুয়াল মেশিন বাট এটা মোবাইল ডিভাইস এর জন্য বানানো ।

4) Android Framework

Native Libraries এবং  Android Runtime এর ঠিক উপরেই আমাদের  Android Framework অবস্থিত  !! এটা ছাড়া বলতে গেলে , পুরো সিস্টেম অচল ! বিভিন্ন Android API যেমন  , UI (User Interface), telephony, resources, locations, Content Providers (data) and package managers এগুলো এই ফ্রেইমওয়ারকেই থাকে । এই ফ্রেইমওয়ারক অনেক classes and interfaces , provide করে android application development এর জন্য ।

5) Applications

 android framework এর ঠিক উপরেই , অনেক applications আছে  যেমন , home, contact, settings, games, browsers যারা  android framework উপর ভিত্তি করে চলে ,  আর android framework ডিপেন্ড করে android runtime and libraries এর উপর  আর , Android runtime and native libraries ডিপেন্ড করে  linux kernal এর উপরে ।

এভাবেই , একটা  android সিস্টেম  গড়ে ওঠে সুন্দরভাবে । ।

পরবর্তীতে , আরো কিছু বিষয় নিয়ে আলোচনা করবো , আজ এইটুকুই --------------

No comments:

Post a Comment