Литмир - Электронная Библиотека

«Да...»

«Когда вы получаете большой шок, возможны такие ситуации, когда видишь вещи, как эти. После выписки следите за своим состоянием около недели, и если не будет никаких изменений, приходите снова»

Те же слова доктор сказал медсестре. Ёнхо был на грани помешательства. Но так как это был совет профессионала, он не должен был сомневаться в этом.

«……»

«Возможно, они скоро исчезнут»

«... Я понимаю», - слабо ответил Ёнхо врачу. Затем он снова взял смартфон.

Ошибка уведомления до сих пор парила в верхнем правом углу, как бы говоря ему поймать её.

Окно багов.

Так он назвал таинственный экран. Он сделал несколько открытий в автобусе по пути в Сеул.

Во-первых, сосредоточившись на предупреждении об ошибке около 3 секунд, он мог увидеть подробности.

Во-вторых, окно показывает не только синтаксические ошибки, но также логические ошибки и ошибки функции.

«Это все реально? Удивительно...»

Он сильно сомневался. Будет ли смартфон работать правильно, если следовать этим решениям.

«Пойду домой и попробую»

Он быстрей зашагал к своему дому.

***

Гэ По Дон (*Находится в районе Каннам в Сеуле)

Это место, где он жил. Из-за облупленной краски и треснувшего бетона, оно выглядело так, будто было построено в 1980-х.

«Нам пришлось уехать и отсюда»

150 миллионов вон (≈130, 000 долларов США) за 15 Пён (≈50 кв.м.), и половина из этого долг. Открыв дверь, он никого не увидел внутри, так как родители ушли на работу.

«Это хорошо...»

Его отец был уволен из центра администрирования, и теперь он работал охранником в здании. Его мать была официанткой в ресторане. Все это было для оплаты его обучения. Они много ожидали от него, так как он был их единственным ребенком. Но он не смог оправдать эти ожидания.

Университет Сон Мин.

Университет находился в Сеуле, но многие люди не знали о нем. Ёнхо пытался написать CSAT на отлично (* CSAT (College Scholastic Ability Test) - стандартный тест, принятый в Южной Корее, результаты которого нужны для поступления), но результаты тестирования оказались не такими высокими, как он ожидал. Он немного интересовался математикой и информатикой, поэтому решил поступить в один такой колледж.

«Сначала помоюсь».

От него сильно пахло потом, потому что он не мылся несколько дней.

Сразу после душа он сел за компьютер.

«Если это действительно устранит ошибки...»

Устранение ошибок без отладки (процесс нахождения и устранения ошибок)? Это способность, которую бы хотели все программисты в мире. Более половины разработки программы - это отладка.

«Надо убедиться, что это правда»

Он открыл Eclipse (программная платформа с открытым исходным кодом, написанная на языке Java) и сделал новый файл класса. Затем он специально изменил исходный код так, чтобы возникла ошибка.

Исключение в поток «main» java.lang.NullPointerException

в Main <init><Main.java:28>

Консольное окно в Eclipse показало протокол ошибок. И тут же несколько слов появилось перед Ёнхо.

-java.lang.NullPointerException

Через 3 секунды слова изменились и показались подробности.

Название: NullPointerException

Подробности: NullPoiinterException происходит на линии 28 Main.class. Происхождение ошибки из-за ссылки на объект без значения.

Решение: Пожалуйста, создайте Main2 Class, который является ссылкой в строке 28

«Вау, это правда!»

Решение было абсолютно верным. Ёнхо специально не создал Main2 Class, создав ошибку. И окно багов совершенно точно это определило.

* звук открывающейся двери *

Ёнхо услышал звук открывающейся двери, и его рот раскрылся от удивления.

«Ёнхо, ты вернулся?»

«М-мама?»

«Да. Поездка прошла хорошо?»

«Ну, да, я думаю».

«Что ты сейчас делал?»

«Я занимался».

«Занимался?» - cпросила мама Ёнхо с подозрением.

«Да, правда».

Университет Сон Мин был одним из университетов низкого уровня в Сеуле. И он был №30 в рейтинге.

«Я понимаю, ты как выпускник должен усердно учиться».

Его средний балл до сих пор был 3.5 (из 4.5). Это не высокий, но и не низкий балл. Однако, учитывая рейтинг университета, он определенно не высокий.

«Ты что-нибудь ел?»

«Да».

«Откуда у тебя деньги, чтобы есть вне дома...»

«……»

«Я слышала, что сейчас уровень занятости среди молодых мужчин низкий... Ты уверен, что найдешь работу?»

«Я понимаю».

«Только не говори так».

«……»

Он хвастался, что получает стипендию, но не получил её ни разу за все 4 года. Ему было нечего возразить, он вернулся в свою комнату и закрыл дверь.

***

Кан Сонгю.

Он был бывшим президентом SUC (Software Union Circle - кружок союза разработчиков).

«Хэй, сколько лет сколько зим»

«Хён, как дела?» (*Хён - в Корее это обращение младшего к старшему среди мужчин)

«Ну, так себе. Как на Джирисане?»

«Хорошо».

Но Сонгю не смотрел на Ёнхо. Он даже не повернулся, а продолжал смотреть в монитор. Ёнхо подошел к нему и посмотрел на экран.

«Что ты делаешь?»

«О, я пытался создать приложение»

«Приложение?»

Eclipce все еще был открыт. Это был экран разработки Indroid, с которым он уже имел дело.

«Да, хён, я получил подработку»

«O...»

На факультете Сонгю был лучшим. До такой степени, что старшие, уже получившие высшее образование, искали его. Может быть поэтому ему часто предлагали работу на неполный рабочий день.

«Но эта вещь просто показывает ошибки», - говорил Сонгю, прогоняя приложение в Eclipse.

«NullPoint на линии 107?»

«О? Как ты это узнал?»

В этот момент по спине Ёнхо пробежал холодок.

«А..! Я заглянул сзади»

На самом деле он сказал это, посмотрев на окно багов. Оно показало ему тип ошибки, а также место, где они произошли в подробностях.

«Правда? Во всяком случае я не знаю, почему он содержит значение null. Когда это происходит, я хочу сломать клаву».

Сменив тему, он заговорил спокойнее.

«Ну, это же ты, хён, я уверен, ты с этим быстро разберешься»

«Я застрял на этом на 2 часа. После всего этого хвастовства с подработками», -пожаловался Сонгю.

«Тогда, хён, давай я сделаю это? С тебя ужин сегодня вечером».

«Правда? Ты хочешь?»

«Предоставь это мне»

«Ладно, (говорит на английском языке), если ты решить эту проблему, я накормлю тебя ужином. Я пока пойду проветрюсь».

«Не торопись, я сделаю всё к тому времени».

«Хорошо»

Было уже понятно, что окно багов работает. Но до сих пор у него оставались подозрения. Чтобы окончательно во всем убедиться, он должен проверить разные ситуации.

Глава 3. Окно багов (3)

Вызванные: java.lang.NullPointerException

Indroid.content.ContextWrapper.getResources(ContextWrapper.java:81)

com.nail.launcher.Loading. <init>(Loading.java:107)</init>

«Линия 107?»

Ёнхо снова прогнал приложение. Смотря на уведомление в правом верхнем углу около 3 секунд, он открыл подробности.

Название: NullPointerException

Детали: Текущая ошибка происходит из-за строки

String [] mTitle = getResources().getStringArray(R.array.app_title)

Эта ошибка возникает, когда ссылаются на значение null.

Решение: Метод getResources() создает объект из SDK Indroid, когда выполняется метод onCreate(). Его нельзя использовать до метода onCreate.

«Итак, все должно заработать, если я поставлю метод getResources() после метода onCreate»

После перемещения getResources() ошибка NullPointerExceptionerror исчезла. Сонгю вошел, как только Ёнхо закончил изменения кода.

«Хэй, оно заработало?»

«Я думаю, да»

«Дай посмотрю»

Сонгю сел и запустил программу.

«О? Реально работает!»

«Видишь»?

Сонгю, запустив программу на подключенном смартфоне, посмотрел на Ёнхо.

«Вау ~! Я думаю, у тебя есть способности»

«Ха-ха, ну, это все благодаря тебе»

2
{"b":"836676","o":1}