trea

На Пикабу
поставил 2524 плюса и 37 минусов
отредактировал 0 постов
проголосовал за 0 редактирований
Награды:
10 лет на Пикабу
11К рейтинг 70 подписчиков 11 подписок 42 поста 6 в горячем

Android, я иду к тебе. День 7

Предыдущий пост https://pikabu.ru/story/android_ya_idu_k_tebe_den_6_5820362

Первый пост https://pikabu.ru/story/android_ya_idu_k_tebe_5807119

Android, я иду к тебе. День 7 Перемены, Программирование, Блог

Привет!

День прошел, в кармане новые знания.

Сегодня я пытался разобраться, что такое конструктор класса и интерфейс. Напомню, классы это такие кирпичики, из которых состоит программа на Java. Если привести аналогию с реальным миром, то это реальные объекты вокруг нас, например машина или самолет. Так вот в Java есть конструктор, который при создании нового объекта задает его характеристики. При этом он может быть организован так, что когда мы, допустим, создаем машину, мы можем указать только ее цвет и количество колес, а все другие параметры такие как вес, размер дисков и тд конструктор задаст сам поумолчанию. Даже не так, скажу по другому. Конструктор в классе создается для того, чтобы описать, какие параметры мы должны дать классу, чтобы он вообще появился.

А интерфейсы выполняют другую работу. Они задают действия, которые выполняют объекты. При создании класса, мы можем указать, что он принадлежит определенному интерфейсу. Для примера опять возьмем автомобиль, и скажем, что он принадлежит интерфейсу «перевозка». Другие классы тоже могу использовать этот интерфейс, такие как уже упомянутый самолет. Таким образом, человек, знающий, что для машины и самолета задан интерфейс «перевозка», но никогда не видевший ни самолета, ни машины, точно может сказать, что на них можно что-то перевозить.

И вот что я скажу, узнав об этих штуках, мне кажется, я потихоньку начинаю понимать в коде то, что раньше бездумно принимал на веру, мол, работает и збс. И это здорово.

Еще позанимался приложением. Перенес добавление новых событий на новую Activity, организовал передачу этих данных в главную Activity и…

Android, я иду к тебе. День 7 Перемены, Программирование, Блог

Нихрена не работает. Пока не знаю где накосячил.

Показать полностью 1

Android, я иду к тебе. День 6

Предыдущий пост https://pikabu.ru/story/android_ya_idu_k_tebe_den_5_5818151

Первый пост https://pikabu.ru/story/android_ya_idu_k_tebe_5807119

Android, я иду к тебе. День 6 Перемены, Программирование, Блог, Гифка

Похоже я не очень умный. Сегодня хотел кучу всего сделать для напоминалки. Но нифига не смог родить толкового. Все что на сей момент есть:

Android, я иду к тебе. День 6 Перемены, Программирование, Блог, Гифка

В планах добавить ввод названия события (сегодня решил ограничиться пока только днями рождения), добавление списка введенных событий и хранение их в файле на телефоне. Но блин, таааак туго у меня все это идет. Похоже, рановато я взялся за приложения. Настроение после этого вечера – говно.

Показать полностью 1

Android, я иду к тебе. День 5

Предыдущий пост https://pikabu.ru/story/android_ya_idu_k_tebe_den_4_5816228

Первый пост https://pikabu.ru/story/android_ya_idu_k_tebe_5807119

Android, я иду к тебе. День 5 Перемены, Программирование, Блог, Игнор-лист

День начался с разочарования. Позавтракав, я заварил чашечку кофе и открыл JavaRush c целью пройти дофига уроков. И на втором же уроке с меня начали трясти деньги за задачки. Серьезно? Они думаю, что я буду платить за непонятно что, после того как пять раз написал System.out.println? Нет спасибо я не голодный. Теперь я понимаю, почему в комментах в прошлый раз скептически отнеслись к этой идее. С JavaRush покончено так и не начавшись.

Сегодня я старался понять, что такое класс Date и с чем его едят. Не скажу, что понял все. И тогда я решил сделать напоминалку дней рождений и других событий, и закрепить так свои новые знания. Пока все в процессе, покажу, как будет хоть что-то работать. Так же я решил там создать и использовать новые классы, обязательно использовать LinkedList или ArrayList, циклы и условия.

Думаю, завтра уже будет, что показать.

Да, забыл добавить. Все данные буду сохранять в текстовый файл. Про работу с файлами сегодня тоже почитал. Тоже пока мало что понятно, про потоки и про буфер и нафига там так много методов.

Кстати сегодня радовался как ребенок когда родил вот это:

LinearLayout layoutDateView = (LinearLayout)findViewById(R.id.linearLayout);

LayoutParams viewParams = new LayoutParams(LayoutParams.WRAP_CONTENT,

LayoutParams.WRAP_CONTENT);

TextView dateTextView = new TextView(this);

dateTextView.setText("Тест");

Так круто было, когда «текствью» создался из кода Java, а не был добавлен вручную. Глупость конечно, но на меня это произвело впечатление.

И спасибо за комментарии, я все читаю и мотаю на ус. Отдельное спасибо kurson за отличные ресурсы.

Показать полностью

Android, я иду к тебе. День 4

Предыдущий пост https://pikabu.ru/story/android_ya_idu_k_tebe_den_3_5814135

Первый пост https://pikabu.ru/story/android_ya_idu_k_tebe_5807119

Android, я иду к тебе. День 4 Перемены, Программирование, Блог, Игнор-лист

Сегодня узнал о массивах в Java, и то, что все адреса начинаются с «0», а не с «1». Массив – такая штука, которая хранит сразу несколько переменных одного типа, к которым мы можем обращаться по их индексу, адресу.

А еще есть списки arraylist и linkedlist. Они отличаются от массивов тем, что не имеют заданной заранее величины, и больше напоминают стопку листов. Они очень похожи, но немного по по-разному устроены.

Познакомился с методами. Даже не знаю, как вкратце описать. Если переменные это информация, то методы это какие-то действия с информацией, ее изменение или использование для получения новой.

Ну а потом начались классы и принципы объектно-ориентированного программирования. Эту тему, а точнее кучу тем я начал еще вчера, но так и не осилил до сих пор.

В общем, я понял, что ничего не понял. Точнее понял, что без практики у меня из головы все это вытекает с той же скоростью что и втекает.

Еще в первом посте, пикабушник Jlbl6a написал про некий сайт, на «ja…» начинается, на «…sh» заканчивается. Не хочу, чтобы обвиняли в рекламе. Я тогда зашел, посмотрел и вышел. Ну а теперь попробую пройти этот курс.

Пока только в самом начале, дальше буду писать сколько прошел.

Показать полностью

Android, я иду к тебе. День 3

Предыдущий пост https://pikabu.ru/story/android_ya_idu_k_tebe_den_2_5811986

Первый пост https://pikabu.ru/story/android_ya_idu_k_tebe_5807119

Android, я иду к тебе. День 3 Перемены, Программирование, Блог, Игнор-лист, Длиннопост

Подошел к концу третий день. И вот, пришло время заняться серьезным делом. Я уже посмотрел как все устроено и даже сделал «типа-приложение», которое можно запустить на телефоне. Но когда все показывают и объясняют на видео, конечно, все понятно, но стоит попробовать разобраться самому в какой-то программе, все становится похоже на китайскую грамоту. Следовательно, буду учить китайский.

Я буду пересказывать по памяти то, что запомнил. Надеюсь, это поможет мне лучше понять самому.

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

boolean – логический, хранит «да» или «нет»

byte, int, short, long – хранят целые числа, разной величины

float, double – дробные числа

char – символы

Целые числа и дробные представлены разной величины просто потому, что у для них выделяется разно количество памяти.

…и тут я понял, что если так все подробно буду рассказывать, то вообще не останется времени на житие. Поэтому буду просто вкратце пересказывать, что узнал.

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

Дальше я узнал, что «=» вовсе не равно, а «==» равно и  «!=» неравно, такие дела. В Java есть свои знаки для некоторых математических и логических операций, но на самом деле все довольно привычно и понятно.

Есть такая конструкция if else, которая обозначает: если это правда то сделай так, а если нет то так.

Есть еще разные циклы, но на них я решил не зацикливаться.

Android, я иду к тебе. День 3 Перемены, Программирование, Блог, Игнор-лист, Длиннопост

Циклы, это такие штуки, которые позволяют повторять одно действие много раз. For – определенное количество раз, a while и do while – повторяют пока условие в них верно.

Завтра, если успею разобраться, расскажу про самое главное, про методы, классы, и что такое ООП. Пока извините, сам не до конца все понимаю.

Показать полностью 1

Android, я иду к тебе. День 2

Предыдущий пост https://pikabu.ru/story/android_ya_idu_k_tebe_den_1_5809473

Первый пост https://pikabu.ru/story/android_ya_idu_k_tebe_5807119

Android, я иду к тебе. День 2 Перемены, Программирование, Блог, Гифка, Длиннопост

Второй день принес новые знания, рассказываю.

Итак, я открываю программу android studio, в которой и будет происходить все волшебство.

Android, я иду к тебе. День 2 Перемены, Программирование, Блог, Гифка, Длиннопост

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

Что же мы видим? Я создал свой первый проект, используя пустой шаблон. Посередине первая страничка приложения, на нее можно добавлять разные штуки типа кнопок, картинок , текстов и прочей лабуды. Делается это очень легко, простым перетаскиванием из списка слева. Кстати забыл сказать, слева висит телефон, это виртуальное устройство, на котором мы можем быстро запустить и проверить наше приложение.

Попробую добавить что-нибудь на первую страничку (activity_main)

Android, я иду к тебе. День 2 Перемены, Программирование, Блог, Гифка, Длиннопост

Появилась кнопка. На самом деле, то что здесь изображено находится в файле activity_main.xml. Мы видим уже построенное изображение, которое для наглядности выводит среда разработки. А в файле activity_main.xml записаны только указания, что и как выводить, и выглядит это так:

Android, я иду к тебе. День 2 Перемены, Программирование, Блог, Гифка, Длиннопост

Если приглядеться, можно понять что <TextView /> - это текст на экране «Hello World!», а <Button /> - это наша кнопка. Это XML, такой язык разметки, в котором мы можем описать объекты и их свойства, которые будут выводиться на экран. Вы скажите: «Но постой! Ты же в прошлый раз говорил, что приложения пишутся на языке Java.» Так вот, этот текст и кнопка пока просто висят и ничего не делают, а вот чему-то научить мы их можем во втором файле, который называется MainActivity.java. И сделаем мы это на языке, который, как вы уже поняли, называется Java.

Вот окно с этим файлом.

Android, я иду к тебе. День 2 Перемены, Программирование, Блог, Гифка, Длиннопост

Пока тут просто описан главный класс MainActivity и в нем написан метод onCreate, который, вроде бы, создает нашу первую страничку

Android, я иду к тебе. День 2 Перемены, Программирование, Блог, Гифка, Длиннопост

Пока не знаю, но проверять буду.

А теперь я поменяю текст на картинку с мордахой андроида и попробую похимичить.

Создаю в классе MainActivity новый метод onButtonClick. В нем создаю новый объект ImageView (Изображение) и указываю через уникальный ID (индентификатор), что этот объект это наша картинка с мордахой, и потом меняю изображение на spongebob.png.

Android, я иду к тебе. День 2 Перемены, Программирование, Блог, Гифка, Длиннопост

Теперь я указываю нашей кнопке, что когда на тебя нажмут, то должен выполниться метод onButtonClick.

И смотрим что получилось.

Android, я иду к тебе. День 2 Перемены, Программирование, Блог, Гифка, Длиннопост

Ура, мое первое приложение на телефоне! Я только учусь и могу написать ерунду. Комментарии приветствуются.

Показать полностью 7

Android, я иду к тебе. День 1

Предыдущий пост https://pikabu.ru/story/android_ya_idu_k_tebe_5807119

Android, я иду к тебе. День 1 Перемены, Программирование, Блог

Ну вот и подошел к концу первый день. Итак, что я узнал.

Приложения под андроид пишутся на языке Java. Это такой язык где вся программа состоит из отдельных кирпичиков, классов. Они могу отвечать за что угодно, и вместе взаимодействуя, дают полноценную программу. Среди них есть главный класс, в приложениях под анроид он называется main activity. Активити это такая отдельная страничка, как на сайтах. Этот класс открывается первым и запускает все взаимодействие между отдельными частями приложения.

У Java есть очень крутая особенность. Все что мы пишем в программе, в дальнейшем преобразуется в байт-код, такие указания понятные одной интересной штуке. А штука эта называется Джава машина. Это такая программа, которая читая байт-код переводит его на язык понятный устройству, на котором она установлена. Таким образом, написанный нами на Java текс становится понятным любому устройству, которое мы используем. Будь то телефон, телевизор да хоть холодильник, это не важно, если в нем сидит волшебная Java Virtual Machine.

Для всего этого я сегодня установил android studio – то где я буду рукожопить, и jdk – инструменты Java, без которых вообще никак.

Узнал я на самом деле намного больше, но об этом напишу завтра, когда получше разберусь.

И под конец, я тут на истину не претендую. Глупо ожидать от меня безупречного понимания, я думаю через пару месяцев, перечитывая этот дневник, буду сам похихикивать. А по сему, я приветствую все замечания и советы. Оскорбления, минусы и надменное «фи» мне тоже нужны, для мотивации, не стесняйтесь.

Показать полностью

Android я иду к тебе

Начинаю вести свой ежедневный дневник о том, как стремлюсь к своей мечте. Почему на пикабу? потому что могу. На тематических сайтах никому я не буду нужен, а тут свою долю негатива я получу сполна. В конце концов, негатив тоже отклик.

И так! Хочу стать разработчиком мобильных приложений. Мои познания в этой области – нихрена. Мой опыт и знания программирования – absolute zero.

Все советы приветствуются. Все минусы приветствуются. Мат и оскорбления приветствуются!

Ну, я пошел грызть науку…

а заодно поучусь рисовать

Android я иду к тебе Перемены, Программирование, Блог
Отличная работа, все прочитано!