JavaRush /Java блогы /Random-KK /JDK жаңа нұсқаларының жиі шығарылуы неге әкеледі?

JDK жаңа нұсқаларының жиі шығарылуы неге әкеледі?

Топта жарияланған
Бұл Java үшін өзгерістер дәуірі. JDK нұсқалары енді жаңа функциялар қолжетімді болған кезде емес, кесте бойынша шығарылады. Бұл тәсілдің оң және теріс жақтары бар, бірақ мұндай өзгерістер JDK 8-ге қалай әсер етеді? Саймон Риттер, атақты Java евангелисті, Java чемпионы және Azul Systems компаниясының Ассоциацияланған техникалық директоры, неліктен «жоспар бойынша жаңа Java» тұрақтылық, қауіпсіздік және баға арасындағы ымыраға келетінін түсіндіреді.
JDK жаңа нұсқаларының жиі шығарылуы неге әкеледі - 1
2018 жылы Java әлемін елеулі өзгерістер күтіп тұр. Өткен жылы жарияланғандай, біз жаңа функциялар қолжетімді болған кезде нұсқаларды шығарудың орнына, JDK нұсқаларын жоспарлы негізде шығаруға көшеміз. Бұл тамаша жаңалық, өйткені енді жаңа мүмкіндіктер шығарылымдарға қосылады, өйткені олар дайын болады және әзірлеушілер оларға тезірек қол жеткізе алады. JDK 10 наурыз айында шығарылады деп жоспарланған және біз қателерді түзетудің екінші кезеңіне ендік, сондықтан бәрі жоспарға сәйкес жүріп жатыр. Java Specification Request (JSR) қазірдің өзінде белсенді түрде әзірленуде және жалпыға ортақ пікірге қол жетімді. Тіпті JDK 11- ге бағытталған JDK жақсарту ұсыныстары (JEPs) бар . Java тамаша жұмыс істеп жатқан сияқты.

Уақыт өзгереді

Дегенмен, осы шығарылым кестесіне байланысты көптеген басқа өзгерістер бар, олар осы жылы өзін көрсетеді және соншалықты жағымды болмауы мүмкін. 22 жарым жыл ішінде біз Java платформасы ретінде оның қолдау көрсету тәсіліне тікелей байланысты үш іргелі қасиеті бар екеніне үйрене алдық.
  1. Тұрақтылық . Бұрын JDK жаңа шығарылымымен қосылған мүмкіндіктер мұқият тексерілгенімен, өндірісте сынақтан өтуді талап етті. Бұл түзетуді қажет ететін кемшіліктерді анықтауға көмектесті. Жаңасын сынау кезінде пайдаланушылардың тұрақты құрылымдармен жұмыс істеуін жалғастыру үшін жаңартулар әрқашан уақытында ішінара қабаттасатын.

    JDK 6-дан басталатын соңғы бірнеше шығарылымға қарасақ, JDK 5 жаңартулары тағы 3 жылға жуық (дәл 2 жыл 11 ай) шығарыла бергенін көреміз. JDK 7 енгізуімен JDK 6 үшін жалпыға қолжетімді жаңартулар бір жыл 9 айға шығарылды. JDK 7 жаңартулары JDK 8 шығарылғаннан кейін 13 ай ішінде шығарылды.


  2. Қауіпсіздік . OpenJDK әзірлеу және қолдау топтары, Oracle және олардың алдында Sun Microsystems (Java жасаған компания, редактордың ескертпесі) платформа қауіпсіздігін әрқашан бірінші орынға қояды. Естеріңізде болса, Java бастапқыда мобильді құрылғыларға арналған (атап айтқанда, Star7 PDA).



    Негізгі даму мақсаттарының бірі codeтың желі арқылы тасымалдануын және қауіпсіз орындалуын қамтамасыз ету болды. Жаңартулар JDK үшін жүйелі түрде жарияланады, оларда анықталған қауіпсіздік мәселелеріне арналған патчтар бар. Бұл жаңартуларды шығарылғаннан кейін бірден орнатсаңыз, сіз толығымен қауіпсіз боласыз.


  3. Нөлдік құны . Java-ның керемет тұстарының бірі - ол 2006 жылы ашық бастапқы бағдарламалық құрал ретінде шығарылғанға дейін әрқашан тегін платформа болды. Java-ны роялтисіз пайдалануға болатын жерде белгілі бір шектеулер болды, бірақ бұл әрқашан мобильді және ендірілген қолданбаларға қатысты; жұмыс үстелі клиенттері мен кәсіпорын serverлері үшін Java-ның ағымдағы нұсқасы әрқашан тегін болды. JDK-ге қазірдің өзінде енгізілген өзгерістердің бірі GPLv2 лицензиясы бойынша OpenJDK орындалатын файлдарын "Classpath" ерекшелігімен шығару болып табылады. Бұл лицензия Java Runtime Environment жүйесін қалай қолдануға болатынына ешқандай шектеулер қоймайды.

Дегенмен, JDK әзірлеу және шығару жолындағы өзгерістер қолданбаларды Java-ның жаңа нұсқаларына көшіру жоспарларын мұқият қарастыруды талап етеді. Осы жаңа шығарылым кестесімен бірнеше алдыңғы шығарылымдар үшін жаңартулардың қолжетімді болуын қамтамасыз ету әрекеттері орындалмауы мүмкін. Пайдаланушылардың екі түрлі тобының қажеттіліктерін қанағаттандыру үшін (жаңа мүмкіндіктерді жылдам талап ететіндер және ұзақ мерзімді тұрақтылықты бағалайтындар) Oracle ұзақ мерзімді қолдау (LTS) үлгісіне көшуді шешті. JDK арнайы нұсқалары LTS шығарылымдары болып саналады, яғни олар үш жыл бойы жаңартуларды алады. Барлық басқа аралық шығарылымдар Мүмкіндік шығарылымдары деп аталады және жаңартуларды тек 6 айға алады. Осы жаңа жүйемен синхрондауды сақтау үшін JDK 8 LTS шығарылымы ретінде жіктелді. Келесі шығарылым 2018 жылдың қыркүйегіне жоспарланған JDK 11 болады. Бұл жаңа модель әкелетін ең үлкен өзгеріс - шығарылымдар арасындағы жаңартулар бұдан былай уақыт бойынша бір-біріне сәйкес келмейді . Мен оны қалың курсивпен қойдым, себебі бұл өте түсінікті болды. Мұнда JDK 19 дейін JDK шығарылымдары үшін жаңартулардың қолжетімділігін көрсететін графика берілген.
JDK - 2 жаңа нұсқаларының жиі шығуы неге әкеледі?
Суретте: Java SE өмірлік циклі – 5+ жылдық кесте Қоғамдық жаңартулар нөлдік қабаттасу («Cliff қолдауы») Oracle коммерциялық қолдауы Oracle кеңейтілген коммерциялық қолдауы
Java SE өмірлік циклі - 5+ жыл кестесі жалпыға ортақ жаңартулар нөлдік уақыт қабаттасу Oracle жалпы орындалатын файлдар (қолдау жоқ) Oracle коммерциялық қолдауы Oracle кеңейтілген коммерциялық қолдауы
Осы өзгерістердің тікелей салдары ретінде Java платформасы әлі де тұрақты, қауіпсіз және тегін, бірақ енді осы үш мүмкіндіктің екеуін таңдау керек. Болашақ Java қолдануларында барлық үш сипаттар бір уақытта қолжетімді болмайды.

Кішкене түсіндірейін

Сіз қауіпсіздікке алаңдайсыз делік (сіз солай болуы керек), бірақ сіз ақша жұмсағыңыз келмейді. Бұл жағдайда жаңа JDK нұсқаларына олар шығарылған бойда көшу қажет. Қолдау уақытында сәйкес келмейтін жағдайларда (Мүмкіндік және LTS шығарылымдары), жаңа қауіпсіздік түзетулерін алу үшін мұны істеуге тура келеді. Өкінішке орай, уақыттың қайталануынсыз сіз өндірісте әлі сыналмаған JDK шығарылымдарына дереу көшуіңіз керек, осылайша сіз бұрынғы тұрақтылықты жоғалтасыз. Тағы бір нұсқа - нөлдік құны бойынша тұрақтылықты таңдау. Тағы да, бұл мүмкін: жаңасы шыққаннан кейін алдыңғы LTS нұсқасын пайдалануды жалғастыру жеткілікті. Сіз өзіңізге таныс тұрақтылыққа ие боласыз, сізге ештеңе төлеудің қажеті жоқ, бірақ сіз ешқандай қауіпсіздік патчтарын алмайсыз, өйткені олар енді осы шығарылым үшін қол жетімді емес. Ақырында, тұрақтылық пен қауіпсіздікті қаласаңыз, төлеуге тура келеді. Алдыңғы LTS шығарылымын пайдалануды жалғастыра аласыз, бірақ қауіпсіздік пен қателерді түзетуге қол жеткізу тек коммерциялық қолдау келісімшарты арқылы қолжетімді болады.

Және автордан шағын жарнама блогы :)

Azul (менің компаниям) Zulu Enterprise брендімен OpenJDK орындалатын файлдар жинағын жасады, олар дереккөзден жасалған, TCK/JCK эталондарымен сыналған және тіпті қате тақырып файлдарына байланысты ашық бастапқы codeтың бүлінуіне көз жеткізу үшін біз әзірлеген утorталармен талданған. . Біз ағымдағы нұсқаны тегін жүктеп алу мүмкіндігін береміз, сонымен қатар қызығушылық танытқандарға коммерциялық қолдау көрсетеміз. Жақында біз Zulu тілін тұтынушыларға барынша икемділікпен қамтамасыз етуге бағытталған жаңа қолдау опцияларын ұсына бастадық. Біз пайдаланушыларға олардың бизнесі мен тұтынушы қажеттіліктеріне сәйкес келетін JDK жаңа нұсқасына көшу мүмкіндігін ұсынғымыз келеді. Ол үшін біз үш қолдау опциясын ұсынамыз:
  1. Қысқа мерзімді қолдау (STS). STS пайдаланушыларға жаңа JDK шығарылымдарына біркелкі өту үшін жеткілікті қолдауы бар жаңа Java мүмкіндіктеріне жылдам қол жеткізуге мүмкіндік береді. Zulu Enterprise STS шығарылымдарын қателерді түзетуге, қауіпсіздік жаңартуларына және қажет болған жағдайда басқа түзетулерге («өндірістік қолдау») қол жетімділікті 12 ай бойына, сонымен қатар консалтингтік қолдауға және пайдаланушыларға JDK жаңа нұсқасына көшуге көмектесуге бағытталған 6 айлық қосымша қолдауды ұсынады. («кеңейтілген қолдау»). Бұл 18 айлық өмірлік циклді құрайды.

  2. Орта мерзімді қолдау (МТС). MTS шығарылымдары жаңа LTS шығарылымын күтпей-ақ өндірістегі мүмкіндік шығарылымдарында қолжетімді жаңа мүмкіндіктерді пайдалануға мүмкіндік береді. Azul LTS шығарылымдары арасында жылына бір MTS шығарылымын жоспарлайды және келесі жалпы қолжетімділік LTS шығарылым күнінен кейін 18 ай ішінде өндірістік қолдауды қамтамасыз етеді. Бұл өндірісті орналастыру кезінде уақыттың қабаттасуын және «бірқалыпты» өтуді қамтамасыз етеді. Өндірістік қолдау аяқталғаннан кейін қосымша 12 ай ұзартылған қолдау көрсетіледі.

  3. Ұзақ мерзімді қолдау (LTS). Ол OpenJDK қауымдастығы LTS деп санайтын шығарылымдарға арналған және қосымша екі жылдық кеңейтілген қолдаумен 8 жылдық өндірістік қолдауды қамтамасыз етеді.
Түсінікті болу үшін тағы бір сызба бар.
JDK - 3 жаңа нұсқаларының жиі шығуы неге әкеледі?
Суретте: Java SE өмірлік циклі – 5+ жылдық кесте Oracle жалпыға қолжетімді екілік файлдары (қолдау көрсетілмейді) Oracle коммерциялық қолдауы Oracle кеңейтілген коммерциялық қолдауы Azul Zulu өндірісінің коммерциялық қолдауы Azul Zulu кеңейтілген (пассивті) коммерциялық қолдауы
Java SE өмірлік циклі - Oracle ұсынған 5+ жылдық жалпы орындалатын бағдарламалар кестесі (қолдау жоқ) Oracle коммерциялық қолдауы Oracle кеңейтілген коммерциялық қолдауы Azul Zulu ұсынған коммерциялық өндірісті қолдау Азул Зулудан кеңейтілген (пассивті) коммерциялық қолдау
Қазіргі уақытта JDK 8 нұсқасын коммерциялық қолдау келісімшартынсыз пайдаланып жатсаңыз және жүйеңізді жалпыға қолжетімді жаңартулар арқылы тұрақты және қауіпсіз етіп отырсаңыз, қыркүйек айынан бастап не істейтініңіз туралы ойланғыңыз келуі мүмкін. Azul бұл мәселеде сізге көмектесуге дайын, сондықтан сізге қолдау қажет болса, бізге хабарласудан тартынбаңыз.

қорытындылар

Биылғы жылы Java платформасының бірнеше аспектілері өзгеруде, олардың көпшілігі жақсы жаққа қарай. Жаңа мүмкіндіктерге жылдам қол жеткізу, Flight Recorder және Mission Control сияқты утorталардың ашық шығарылымы, OpenJDK орындалатын файлдарын GPLv2 лицензиясы бойынша "Classpath" ерекшелігімен шығару. Өкінішке орай, Java платформасына кәдімгі жомарт тегін қолдау өткен нәрсеге айналуда. Java әлі де тұрақты, қауіпсіз және тегін. Осы үш қасиеттің қайсысы сізге және сіздің пайдаланушыларыңызға маңыздырақ?
JDK - 4 жаңа нұсқаларының жиі шығуы неге әкеледі?

автор туралы

Саймон Риттер – Azul Systems техникалық директорының орынбасары. Саймон 1984 жылдан бері IT бизнесімен айналысады және Ұлыбританиядағы Брунель университетінде физика бойынша бакалавр дәрежесін алды.

Саймон 1996 жылы Sun Microsystems компаниясына қосылды және Java әзірлеуде де, кеңес беруде де уақыт өткізді. 1999 жылдан бастап ол негізгі Java платформасына да, клиенттік және ендірілген қолданбаларға да назар аудара отырып, әзірлеушілерге Java технологияларын көрсетіп келеді. Қазір Azul Systems компаниясында ол адамдарға Java және Azul JVM өнімдерін жақсырақ түсінуге көмектесуді жалғастыруда. Сіз оны Twitter-де бақылай аласыз: @speakjava .

Пікірлер
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION