Java барлық жерде бірдей жұмыс істейді

Новости мира

«Бір рет жасау – кез келген жерде пайдалану» («Бір рет жазу – кез келген жерде іске қосу»). Java жасаушылардың осы ұранының екінші бөлігінде Java бағдарламасы барлық жерде бірдей жұмыс істейді деген мәлімдеме бар. Өкінішке орай, іс жүзінде бәрі оңай емес. Әртүрлі платформалардағы әртүрлі компаниялардың Java машиналары бір-бірімен 100% үйлесімді ЕМЕС.

Әртүрлі платформалардағы Java машиналарының жұмысындағы айырмашылықтар көп тапсырманы жүзеге асыруда да, терезе кітапханасының (AWT) жұмысында да бар. Барлығы тәртіпте екеніне көз жеткізу үшін күрделі Java бағдарламаларын әртүрлі платформаларда «іске қосу» керек. Жалпы айтқанда, тіпті бір платформада, бірақ әртүрлі машиналарда мұндай бағдарламалар әртүрлі тәсілдермен орындалуы мүмкін.

Мысалы, бағдарламашы оның коды бір процессорлы машинаға қарағанда көп процессорлы машинада басқаша әрекет ететін жағдайға тап болуы мүмкін. Microsoft (бұдан әрі MS JVM) жасаған Java машинасын ерекше атап өту керек. Ол Java толығымен заңды емес деп аталады (бұл жақында сот шешімімен расталды).

MS JVM жүйесінде RMI немесе CORBA технологияларына қолдау көрсетілмейді, бірақ бұл жерде ActiveX нысандарын пайдалануға болады, бұл тек Windows платформасына ғана тән және басқа еш жерде жоқ технология. Microsoft корпорациясы стандартты Java класс кітапханасын Windows платформасының кейбір жұмыс тәсілдерін көрсететін түрлермен кеңейтті.

Java машиналарының әртүрлі жылдамдықтары туралы да ұмытпау керек. Бұл айырмашылық бағдарламаның қабылданбайтын кешігуіне немесе басқа мәселелерге әкелуі мүмкін. Жоғарыда айтылғандардан қорытынды қарапайым: Java бағдарламаларын жасағанда, оларды платформалардың кең ауқымында сынап көру керек және стандартты емес тіл кеңейтімдерін пайдаланбау керек.
Java – программалау тілі

Java белгілі бір бағдарламалау тілі ғана деген пікір бар. Бірақ бұл жай ғана алдау. Иә, Java да бағдарламалау тілі болып табылады. Бұл және басқа да көптеген технологиялар.

Java — бұл операциялық жүйенің барлық функцияларын ауыстыруға ұмтылатын заманауи бағдарламалық қамтамасыз ету платформасы. Мүмкін, бұл жақын болашақта болады (бірақ мұндай әрекеттер жасалды, бірақ сәтсіз болды). Java тілінің негізгі күшті тұсы — платформаның тәуелсіздігі, яғни виртуалды машинада жұмыс істейтін бағдарламалық жасақтаманың аппараттық және операциялық жүйеден тәуелсіздігі.

Айта кету керек, Java платформасы үшін ондаған түрлі бағдарламалау тілдері бар. Олардың кейбіреулерін Java компиляторының өзі құрастыра алады, ал басқалары виртуалды машинамен тікелей жұмыс істей алады.
Java — C++ тілінің кіші әпкесі

Java бағдарламалау тілі шынымен C++ тілінен шыққан ба? Иә дегеннен гөрі жоқ. Sun идеясы Java тілінің синтаксисін кеңінен қолданылатын бағдарламалау тіліне ұқсас етіп, оны үйренуді жеңілдету болды. Бұл, сайып келгенде, Java C бағдарламашыларына көшуді ынталандыру және жеңілдету керек еді.

Сонымен қатар, Java бірнеше басқа жүйелер мен бағдарламалау тілдерінен алынған идеялар мен механизмдерге негізделген. Кем дегенде массивтің толып кетуін басқаруды алыңыз (Паскаль). Немесе Java бағдарламалары бөлек құрастырылған, сыныптар пакеттелген. Бұл C++ файлдарын дербес құрастыру тұжырымдамасынан ерекшеленетін модульдік бағдарламалаудың (айталық, Модуль-2 сияқты) вариациясы.

Кейбір инновациялар көпшілікке белгісіз тілдер мен жүйелерден алынды.

Мысалы, класс интерфейсінің принципі NeXT әзірлеген Objective C тілінен алынған. Ерекшеліктерді өңдеу механизмі толығымен дерлік Modula-3-тен алынған. Java тілінің «қоқыс жинау» сияқты маңызды құрамдас бөлігінің ішкі іске асыру принциптері ең алдымен Lisp-тен алынған. Эйфель, Модула-3, Оберон сияқты «қалыпты» тілдердің бір бөлігі де бастапқыда бұл механизмге ие болды.

Жоғарыда айтылғандарды қорытындылай келе, Java әртүрлі бағдарламалау жүйелерінен, соның ішінде C++ тілінің синтаксисінен көптеген идеялар мен тәсілдерді сіңірді деп қорытынды жасауға болады.