Page 17 - 4836
P. 17

адже компілятор відразу повідомляє про помилки і вказує їх
                            розташування в коді.
                                   - легкість  в  освоєнні  і  розробленні.  І  перше місце  тут
                            займає  робота  з  пам'яттю.  У  Java  з  самого  початку  був
                            введений     механізм    автоматичної     збірки   сміття    (від
                            англійського  garbage  collector).  Крім  введення  garbage
                            collector,  були  зроблені  й  інші  кроки  для  полегшення
                            розробки.  Деякі  з  них  вже  згадувалися  -  відмова  від
                            множинного  спадкоємства,  спрощення  синтаксису  та  ін.
                            Можливість      створення    багатопоточних     додатків    була
                            реалізована в першій же версії Java.
                                   - безпека.  Початкова  націленість  на  розподілені
                            додатки, і особливо рішення виконувати аплети на клієнтській
                            машині,  зробили  питання  захисту  одним  з  найбільш
                            пріоритетних. При роботі будь-якої віртуальної машини Java
                            діє цілий комплекс заходів.
                                        o  По-перше,  це  правила  роботи  з  пам'яттю.  Вже
                                   говорилося,     що  очищення       пам'яті   проводиться
                                   автоматично. Резервування її також визначається JVM,
                                   а  не  компілятором,  або  явним  чином  з  програми,
                                   розробник  може  лише  вказати,  що  він  хоче  створити
                                   ще один новий об'єкт.
                                        o  наявність  віртуальної  машини-інтерпретатора
                                   значно  полегшує  відсікання  небезпечного  коду  на
                                   кожному       етапі    роботи.     Спочатку      байт-код
                                   завантажується в систему, як правило, у вигляді class-
                                   файлів.  JVM  ретельно  перевіряє,  чи  всі  вони
                                   підкоряються  загальним  правилам  безпеки  Java  і  не
                                   створені  чи  зловмисниками  за  допомогою  якихось
                                   інших засобів (і не спотворені чи при передачі). Потім,
                                   під час виконання програми, інтерпретатор легко може
                                   перевірити  кожну  дію  на  допустимість.  Можливості
                                   класів, які були завантажені з локального диска або по
                                   мережі, істотно розрізняються (користувач легко може




                                                           15
   12   13   14   15   16   17   18   19   20   21   22