| জাভা |
| 100px |
| প্যারাডাইম |
বস্তু সংশ্লিষ্ট, স্ট্রাকচার্ড, ইমপেরাটিভ |
| আবির্ভাব |
১৯৯৫ |
| ডিজাইন করেছেন |
সান মাইক্রোসিস্টেম (বর্তমানে ওরাকল কর্পোরেশন এর মালিকানাধীন) |
| সর্বশেষ প্রকাশ |
জাভা স্ট্যান্ডার্ড সংস্করণ ৬ (১.৬.০_২১)/ জুলাই 7, 2010; ২২ মাস আগে (2010-07-07) |
| টাইপিং ডিসিপ্লিন |
স্ট্যাটিক, নিরাপদ, শক্তিশালী, নমিনেটিভ |
| প্রধান বাস্তবায়ন |
অসংখ্য |
| যার দ্বারা প্রভাবিত |
অবজেক্টিভ-সি, সি++, স্মলটক, আইফেল,[১] সি#[২] |
| যাকে প্রভাবিত করেছে |
সি#, ডি, জে#, আডা ২০০৫, ইসিএমএস্ক্রিপ্ট, স্ক্যালা |
| ওএস |
আন্ত-প্লাটফর্ম |
| বৈধপত্র |
গনু জেনারেল পাবলিক লাইসেন্স / জাভা কমিউনিটি প্রোসেস |
| ওয়েবসাইট |
http://java.sun.com/ |
জাভা একটি প্রোগ্রামিং ভাষা। সান মাইক্রোসিস্টেম ৯০এর দশকের গোড়ার দিকে জাভা ডিজাইন করার পরে এটি অতি দ্রুত বিশ্বের সবচেয়ে জনপ্রিয় প্রোগ্রামিং ভাষার একটিতে পরিণত হয়। জাভা'র এই জনপ্রিয়তার মুল কারণ এর বহনযোগ্যতা (portability), নিরাপত্তা, এবং অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং ও ওয়েব প্রোগ্রামিং এর প্রতি পরিপূর্ণ সাপোর্ট।
[সম্পাদনা] জাভা'র গুরুত্বপূর্ণ দিকগুলো
[সম্পাদনা] বহনযোগ্যতা (portability)
জাভা'র পূর্বতন প্রোগ্রামিং ভাষাগুলিতে সাধারণত এক অপারেটিং সিস্টেমের জন্য লেখা প্রোগ্রাম অন্য অপারেটিং সিস্টেম এ চালানো যেত না। জাভায় লেখা প্রোগ্রাম যেকোন অপারেটিং সিস্টেমে চালানো যায় শুধু যদি সেই অপারেটিং সিস্টেমের জন্য একটি জাভা রানটাইম এনভায়রনমেন্ট(জাভা ভার্চুয়াল মেশিন)থেকে থাকে। এই সুবিধা জাভাকে একটি অনন্য প্ল্যাটফর্মে পরিণত করে। বিশেষ করে ইন্টারনেটে, যেখানে অসংখ্য কম্পিউটার যুক্ত থাকে এবং কম্পিউটারগুলো বিভিন্ন অপারেটিং সিস্টেম ব্যবহার করে থাকে সেখানে জাভায় লেখা অ্যাপলেট গুলো সকল কম্পিউটারে চলতে পারে এবং এর জন্য কোন বিশেষ ব্যবস্থা নিতে হয় না। জাভা'র এই সুবিধাকে বলা হয় বহনযোগ্যতা।
[সম্পাদনা] অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং
অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং জাভা'র খুবই গুরুত্বপূর্ণ দিক। প্রোগ্রামিং জগতে মুলত সিমুলা৬৭ (প্রোগ্রামিং ভাষা) এবং স্মলটক (প্রোগ্রামিং ভাষা) এর মাধ্যমে অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং এর সূচনা হলেও, জাভা'র মাধ্যমেই এটি পরিপূর্ণভাবে বিকশিত হতে পেরেছে। অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং এর কারণে জাভায় অতিদীর্ঘ প্রোগ্রাম লেখা এবং ত্রুটিমুক্ত(debug) করা অনেক সহজ হয়েছে।
[সম্পাদনা] জাভা প্রোগ্রাম কিভাবে কাজ করে
জাভাতে লেখা কোড কম্পাইল হয়ে সরাসরি মেশিন কোড-এ রূপান্তরিত হয় না। বরং তা বাইট কোড নামক বিশেষ একটি মধ্যবর্তি অবস্থায় আসে যা .class ফাইলে থাকে। এই ক্লাস ফাইল সরাসরি চলতে পারে না। একে চালাতে গেলে জাভা ভার্চুয়াল মেশিন এর মাধ্যমে চালাতে হয়।
জাভার বাক্যরীতি মুলত সি++ থেকে নেওয়া। সি++ এর মত এতে বাক্যরীতি রয়েছে স্ট্রাকচারড, জেনেরিক এবং অবজেক্ট ওরিয়েন্টেট প্রোগামিং এর জন্য। তবে সি++ বিশুদ্ধ অবজেক্ট অরিয়েন্টেড না হলেও জাভা বিশুদ্ধ অবজেক্ট অরিয়েন্টেড প্রোগ্রাম্মিং ভাষা।
[সম্পাদনা] ডাটা কাঠামো/স্ট্রাকচার
জাভাতে এগুলোর জন্য আলাদা বাক্যরীতি রয়েছে। উল্লেখ্য, এরে এবং স্ট্রিং সাধারণ/primitive ডাটা টাইপ নয়, তারা reference ডাটা টাইপ এবং তাদের কে java.lang.Object থেকে আনা হয়।
[সম্পাদনা] সাধারন/primitive ডাটা টাইপগুলো
| Integer টাইপগুলো |
| byte |
৮-বিট |
| short |
১৬-বিট |
| int |
৩২-বিট |
| long |
৬৪-বিট |
| Floating-point টাইপগুলো |
| float |
৩২-বিট |
| double |
৬৪-বিট |
| Characters |
| char |
১৬-বিট ইউনিকোড |
| Boolean |
| boolean |
true বা false |
- Sun Microsystems: Java home page
- Sun Microsystems: Developer Resources for Java Technology.
- Chamber of Chartered Java Professionals International: Professionalism for Java Technology.
- Sun Microsystems: Java Language Specification 3rd Edition.
- টেমপ্লেট:Javadoc:SE
- A Brief History of the Green Project
- Michael O'Connell: Java: The Inside Story, SunWord, July 1995.
- Patrick Naughton: Java Was Strongly Influenced by Objective-C (no date).
- David Bank: The Java Saga, Wired Issue 3.12 (December 1995).
- Shahrooz Feizabadi: A history of Java in: Marc Abrams, ed., World Wide Web - Beyond the Basics, Prentice Hall, 1998.
- Patrick Naughton: The Long Strange Trip to Java, March 18, 1996.
- Open University (UK): M254 Java Everywhere (free open content documents).
- is-research GmbH: List of programming languages for a Java Virtual Machine.
- How Java's Floating-Point Hurts Everyone Everywhere, by W. Kahan and Joseph D. Darcy, University of California, Berkeley.