ІТ блог: "Усе замахало, але надія є" Марк Менсон: Судячи з назви, ця книга черговий екземпляр мотиваційної літератури, яка дасть нам пару нових правил, завдяки яких ми досягнемо успіху. Насправді, назва дещо оманлива. Ця книга є більш філософського спрямування. Недарма тут трішки згадуються Ніцше, Кант, Фройд, Ейнштейн, Платон. Піднімаються питання мотивації людської діяльності. Висвічується постійна боротьба розуму і серця(бажань). >>>Читати далі>>>>
понеділок, 22 червня 2020 р.
вівторок, 12 травня 2020 р.
ІТ блог: Лінійний графік GraphView (Android)
ІТ блог: Лінійний графік GraphView (Android): GraphView - безкоштовна бібліотека з відкритим програмним кодом для побудови лінійних графіків, стовпчикових діаграм, точкових діаграм в Java Android програмах.
Щоб додати бібліотеку до свого проекту необхідно зробити декілька кроків.
Передусім додати залежність у gradle:
Щоб додати бібліотеку до свого проекту необхідно зробити декілька кроків.
Передусім додати залежність у gradle:
implementation 'com.jjoe64:graphview:4.2.2'До макету (layout) активності додаємо: >>>Читати далі>>>>
субота, 9 травня 2020 р.
ІТ блог: Бібліотеки для побудови графіків в Android програм...
ІТ блог: Бібліотеки для побудови графіків в Android програм...: Задались питанням «Як побудувати графік (діаграму) у Android програмі?». Для цього існує вже ряд розроблених бібліотек для Android розробників. З тих, що я знайшов, більш менш пристойними є: SciChart, AndroidCharts, AChartEngine, GraphView, MPAndroidChart. Останні дві є найбільш популярними. Існують також дуже простенькі невеличкі бібліотеки, які зосереджуються на малюванні одного якогось графіку, найчастіше лінійного. >>>Читати далі>>>>
четвер, 7 травня 2020 р.
ІТ блог: FileChooser (FilePicker) in Android Program
ІТ блог: FileChooser (FilePicker) in Android Program:Якщо необхідно реалізувати вибір файлів у вашій Android програмі, то додати до своєї програми так званий FileChooser або ж його ще називають FilePicker можна декількома способами. Можна використати стандартні засоби API Android, а можна скористатися сторонніми бібліотеками, яких зараз є доволі багато. >>>Читати далі>>>>
середа, 6 травня 2020 р.
ІТ блог: Читання каталогу на Java
ІТ блог: Читання каталогу на Java:
Прийшлось вирішувати наступну задачу. Необхідно було за допомогою
програми на java збити дані з файлів в каталозі в один. Крім власне
читання з файлів і запису, виникла необхідність прочитати вміст каталогу(папки) і одержати список файлів. >>>>Читати далі>>>>

програми на java збити дані з файлів в каталозі в один. Крім власне
читання з файлів і запису, виникла необхідність прочитати вміст каталогу(папки) і одержати список файлів. >>>>Читати далі>>>>
субота, 2 травня 2020 р.
ІТ блог: Клас EnumSet (Java)
ІТ блог: Клас EnumSet (Java): Клас EnumSet — це одна з спеціалізованих реалізацій інтерфейсу Set для використання з перелічуваним типом даних (enum). EnumSet розширює... >>>Читати далі>>>
четвер, 30 квітня 2020 р.
ІТ блог: Клас ArrayDeque (Java)
ІТ блог:

ArrayDeque (читається як аррейдек) – це клас який забезпечує двосторонню чергу. Іншими словами - це автоматично зростаючий масив, що дозволяє нам додавати або видаляти елементи з обох боків черги. ArrayDeque може бути використано як стек (LIFO, останній ввійшов - перший вийшов) або ж як черга (FIFO, перший ввійшов - перший вийшов).
ArrayDeque не може містити в якості елемента null.
Клас ArrayDeque швидший за клас Stack, якщо... >>>>Читати далі >>>>

ArrayDeque (читається як аррейдек) – це клас який забезпечує двосторонню чергу. Іншими словами - це автоматично зростаючий масив, що дозволяє нам додавати або видаляти елементи з обох боків черги. ArrayDeque може бути використано як стек (LIFO, останній ввійшов - перший вийшов) або ж як черга (FIFO, перший ввійшов - перший вийшов).
ArrayDeque не може містити в якості елемента null.
Клас ArrayDeque швидший за клас Stack, якщо... >>>>Читати далі >>>>
вівторок, 28 квітня 2020 р.
ІТ блог: Як зберегти dataframe у csv файл (python)
ІТ блог: Як зберегти dataframe у csv файл (python)

CSV (від англ. comma-separated values 'значення, розділені комою', іноді character-separated values 'значення, розділені символом') — файловий формат для представлення табличних даних, у якому поля відокремлюються символом коми (або крапкою з комою) та переходу на новий рядок. Поля, що містять коми, декілька рядків, або лапки (позначаються подвійними лапками), мають обмежуватися з обох боків лапками. CSV формат простий та зручний для програмної обробки, тому його часто використовують для збереження різноманітнийх табличних даних з метою подальшої обробки їх різноманітними програмами. Практично усі сучасні мови, які займаються обробкою даних, мають зручні функції для читання даних у даному форматі.
Для збереження DataFrame у csv файл у Python використовується метод(функція) to_csv() класу pandas.DataFrame. Наприклад так: >>>Читати далі>>>

CSV (від англ. comma-separated values 'значення, розділені комою', іноді character-separated values 'значення, розділені символом') — файловий формат для представлення табличних даних, у якому поля відокремлюються символом коми (або крапкою з комою) та переходу на новий рядок. Поля, що містять коми, декілька рядків, або лапки (позначаються подвійними лапками), мають обмежуватися з обох боків лапками. CSV формат простий та зручний для програмної обробки, тому його часто використовують для збереження різноманітнийх табличних даних з метою подальшої обробки їх різноманітними програмами. Практично усі сучасні мови, які займаються обробкою даних, мають зручні функції для читання даних у даному форматі.
Для збереження DataFrame у csv файл у Python використовується метод(функція) to_csv() класу pandas.DataFrame. Наприклад так: >>>Читати далі>>>
понеділок, 27 квітня 2020 р.
ІТ блог: Клас PriorityQueue (Java)
ІТ блог: Клас PriorityQueue (Java): PriorityQueue дозволяє реалізувати чергу на основі пріоритету. Така черга може бути корисна, наприклад, у разі необхідності обслуговування клієнтів згідно пріоритету. При зберіганні чисел в пріоритетній черзі, така черга гарантує, що першим елементом завжди буде найменший елемент. При цьому не гарантується ніякий стабільний послідовний порядок збереження елементів. Після додавання або видалення елементу з пріоритетної черги, порядок зберігання елементів в цій черзі змінюється таким чином, що в голові черги опиняється найменший елемент згідно його природнього порядку або згідно заданого компаратора.
<br />
PriorityQueue має наступні конструктори: >>>>Читати далі>>>
<br />
PriorityQueue має наступні конструктори: >>>>Читати далі>>>
субота, 25 квітня 2020 р.
ІТ блог: Математичні формули на Blogger (LaTeX)
ІТ блог: Математичні формули на Blogger (LaTeX):
Якщо на блозі необхідне відображення формул, то можна або додавати формули рисунками або ж залучити пітримку LaTeX до свого блогу. Для цього необхідно додати відповідний скрипт до нашого блогу.
Спосіб один, додаємо в режимі редагування HTML (Тема/Редагувати HTML) в середині тегу head наступні рядки: >>>> Читати далі >>>>
Якщо на блозі необхідне відображення формул, то можна або додавати формули рисунками або ж залучити пітримку LaTeX до свого блогу. Для цього необхідно додати відповідний скрипт до нашого блогу.
Спосіб один, додаємо в режимі редагування HTML (Тема/Редагувати HTML) в середині тегу head наступні рядки: >>>> Читати далі >>>>
четвер, 23 квітня 2020 р.
ІТ блог: Multiple Subplots (python)
ІТ блог: Multiple Subplots (python):
Будувати множинні графіки в python можна різними способами. При побудові графіків з використанням бібліотеки Matplotlib існує два стилі, які часто комбінуються. Один це стиль matlab, який реалізовується за допомогою функцій у модулі pyplot. Інший стиль - це об'єктно- орієнтований стиль, який мені особисто більше подобається (мабуть Java дається взнаки). В об'єктно орієнтованому стилі ви маєте фігуру - що представляє собою весь графік і підграфіки(subplots), що предсталяються об'єктами Axes. Взявши потрібний об'єкт Axes ми отримуємо можливість маніпулювати нашим підграфіком.
Один із способів це зробити використати метод(функцію) sublots():
Один із способів це зробити використати метод(функцію) sublots():
#будуємо графік 2х2 (4 підграфіки) fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2)Можна також так: >>>Читати далі>>>>
неділя, 19 квітня 2020 р.
ІТ блог: Клас TreeSet (Java)
ІТ блог: Клас TreeSet (Java): Клас TreeSet дозволяє створювати посортовану колекцію. Для зберігання елементів застосовується бінарна деревовидна структура. Об'єкти зберігаються в посортованому порядку по зростанню. Час доступу та одержання елементів доволі малий, тому клас TreeSet підходить для зберігання великих об’ємів відсортованих даних, які повинні бути швидко знайдені.
Клас TreeSet розширює клас AbstractSet та реалізує інтерфейс NavigableSet. NavigableSet реалізується на базі TreeMap.
В класі доступні чотири конструктори:
Клас TreeSet розширює клас AbstractSet та реалізує інтерфейс NavigableSet. NavigableSet реалізується на базі TreeMap.
В класі доступні чотири конструктори:
TreeSet () TreeSet(Collection с) TreeSet(Comparator компаратор) TreeSet(SortedSet>>>>> Читати далі >>>>>>ss)
субота, 18 квітня 2020 р.
ІТ блог: Клас LinkedHashSet
ІТ блог: Клас LinkedHashSet: Клас LinkedHashSet розширює клас HashSet не додаючи ніяких нових методів. Працює він дещо довше за HashSet проте зберігає порядок в якому елементи додаються до нього. Відповідно це дозволяє організувати послідовну ітерацію вставлення та витягнення елементів. Всі конструктори та методи роботи з LinkedHashSet аналогічні методам класу HashSet. >>>Детальніше>>>
пʼятниця, 17 квітня 2020 р.
ІТ блог: Підсвітка синтаксису на Blogger (google-code-prettyfy)
ІТ блог: Підсвітка синтаксису на Blogger (google-code-prett...:
Свого часу написав статтю про підсвітку синтаксису для блогів на платформі Blogger (blogspot.com): Підсвітка синтаксису на Blogger. Підсвітка від Алекса Горбачева получалась доволі красивою з реалізацією під різні мови, проте доволі часто через завантажування скриптів блог починав підвисати і час його завантаження збільшився. Тому вирішив відмовитися від неї і користуватися тегом pre. Проте хочеться все ж хоч якось прикрасити код) Тому знайшов інший вихід скрипти google-code-prettify.
Як і в попередньому випадку заходимо в управління блогом знаходимо пункт "Тема" і тиснемо кнопку "Редагувати HTML" і там перед тегом <head> або ж в ньому вставляємо: >>>>Читати далі>>>
Як і в попередньому випадку заходимо в управління блогом знаходимо пункт "Тема" і тиснемо кнопку "Редагувати HTML" і там перед тегом <head> або ж в ньому вставляємо: >>>>Читати далі>>>
ІТ блог: Клас HashSet
HashSet – це клас призначений для зберігання даних у вигляді множини невпорядкованих елементів. Якщо потрібна впорядкована множина, то використовуйте TreeSet. HashSet також не гарантує стабільного порядку збереження об’єктів. Тобто при додаванні об’єктів порядок зберігання елементів змінюється. Вони можуть бути збережені як в кінці множити так і в середині. Якщо потрібен один порядок зберігання об’єктів використовуйте LinkedHashSet.
Сам термін «множина» означає, що елементи не будуть повторюватися. Для зберігання і пошуку елементів використовується хеш-код об’єкта. HashSet також може містити значення null. Власне всередині самої реалізації HashSet використовується клас HashMap, який дозволяє зберігати елементи у вигляді двох складових ключа та хеш-коду. У класі HashSet хеш-код недоступний і використовується неявно для користувача.
Клас HashSet розширює клас AbstractSet та реалізує інтерфейс Set. Також реалізовує інтерфейси Serializable та Clonable.
HashSet має такі конструктори: >>>Читати далі>>>>
Сам термін «множина» означає, що елементи не будуть повторюватися. Для зберігання і пошуку елементів використовується хеш-код об’єкта. HashSet також може містити значення null. Власне всередині самої реалізації HashSet використовується клас HashMap, який дозволяє зберігати елементи у вигляді двох складових ключа та хеш-коду. У класі HashSet хеш-код недоступний і використовується неявно для користувача.
Клас HashSet розширює клас AbstractSet та реалізує інтерфейс Set. Також реалізовує інтерфейси Serializable та Clonable.
HashSet має такі конструктори: >>>Читати далі>>>>
четвер, 16 квітня 2020 р.
ІТ: Як побудувати графік по стовпцям pandas dataframe (python)
ІТ: Як побудувати графік по стовпцям pandas dataframe ...: Для виводу використовуємо бібліотеку matplotlib.
Наступний приклад демонструє створення dataframe та виводу його стовпців на лінійному графіку. Показано як додати назву графіку, підписи осей, сітку, задати вигляд підпису осі Х. >>>Читати далі>>>
Наступний приклад демонструє створення dataframe та виводу його стовпців на лінійному графіку. Показано як додати назву графіку, підписи осей, сітку, задати вигляд підпису осі Х. >>>Читати далі>>>
середа, 15 квітня 2020 р.
ІТ блог: Клас LinkedList
ІТ блог: Клас LinkedList:
LinkedList — це структура даних, що являє собою пов’язаний список елементів (об’єктів).
Різниця між ArrayList та LinkedList полягає в тому, що ArrayList реалізований у вигляді масиву, а LinkedList у вигляді пов’язаних між собою об’єктів. ArrayList швидко виконує читання і заміну елементів (посилань на об’єкти), проте, щоб вставити новий елемнт в середину ArrayList або видалити існуючий в середині ArrayList здійснюється послідовний зсув цілого ряду елементів масиву. В LinkedList доволі швидко відбувається вставлення нового елементу або видалення існуючого. Це відбувається тому, що в середині реалізації LinkedList змінюються лише посилання на попередній і наступний об’єкти (елементи). Проте доступ до об’єктів по індексу в LinkedList відбувається повільніше ніж в ArrayList. Тож загалом, LinkedList корисний, коли необхідно часто вставляти та видаляти елементи зі списку, а в інших випадках краще використовувати ArrayList.
Існує два конструктури LinkedList: >>>Читати далі>>>
LinkedList — це структура даних, що являє собою пов’язаний список елементів (об’єктів).
Різниця між ArrayList та LinkedList полягає в тому, що ArrayList реалізований у вигляді масиву, а LinkedList у вигляді пов’язаних між собою об’єктів. ArrayList швидко виконує читання і заміну елементів (посилань на об’єкти), проте, щоб вставити новий елемнт в середину ArrayList або видалити існуючий в середині ArrayList здійснюється послідовний зсув цілого ряду елементів масиву. В LinkedList доволі швидко відбувається вставлення нового елементу або видалення існуючого. Це відбувається тому, що в середині реалізації LinkedList змінюються лише посилання на попередній і наступний об’єкти (елементи). Проте доступ до об’єктів по індексу в LinkedList відбувається повільніше ніж в ArrayList. Тож загалом, LinkedList корисний, коли необхідно часто вставляти та видаляти елементи зі списку, а в інших випадках краще використовувати ArrayList.
Існує два конструктури LinkedList: >>>Читати далі>>>
вівторок, 14 квітня 2020 р.
ІТ блог: Клас ArrayList
ІТ блог: Клас ArrayList:
Клас ArrayList - це по суті динамічний масив об'єктних змінних. Динамічний означає, що якщо його об'єму недостатньо, то він автоматично змінює свій об'єм при додаванні до нього нових елементів. При потребі можна задати йому потрібний об'єм методом ensureCapacity (). ArrayList дозволяє читати об'єкти як по індексу так і послідовно через ітератор.
Клас ArrayList розширює клас AbstractList та реалізовує інтерфейс List.
Наступний приклад демонструє створення ArrayList, його наповнення об'єктами типу String та їх читання за допомогою методу get (int index) та за допомогою ітератора. >>>>Читати далі>>>>
Клас ArrayList - це по суті динамічний масив об'єктних змінних. Динамічний означає, що якщо його об'єму недостатньо, то він автоматично змінює свій об'єм при додаванні до нього нових елементів. При потребі можна задати йому потрібний об'єм методом ensureCapacity (). ArrayList дозволяє читати об'єкти як по індексу так і послідовно через ітератор.
Клас ArrayList розширює клас AbstractList та реалізовує інтерфейс List.
Наступний приклад демонструє створення ArrayList, його наповнення об'єктами типу String та їх читання за допомогою методу get (int index) та за допомогою ітератора. >>>>Читати далі>>>>
понеділок, 13 квітня 2020 р.
ІТ блог: Вступ в класи та методи
ІТ блог: Вступ в класи та методи:
Роз’яснення принципів побудови і роботи з класами доволі громіздка тема, тому тут розглянемо лише спрощені основи їх роботи і створення. Детальніше дивіться розділ присвячений класам. Розглянути зараз необхідно через те, що Java повністю об’єктно-орієнтована мова і з класами та пов’язаними з ними методами Ви стикатиметесь на кожному кроці. Зокрема навіть вивід даних System.out.prinln(); - здійснюється за допомогою класу System та методу println().
Для прикладу розглянемо наступну задачу: «Ви фанат збору 1 гривневих монет:). Назбирали їх чимало і хочете купити невеличкий сейф, щоб туди вмістилася ваша вся колекція і вбудувати цей сейф у стіну, щоб його з вашою колекцією не вкрали:). В інтернет-магазині вказані розміри сейфу. Постає питання, який же сейф вибрати? Оскільки сейф не один, то щоб не розраховувати вручну кожного разу об'єм сейфу, Ви захотіли написати відповідну програму.»
І так маємо: >>> Читати далі>>>>
Класи
Класи – це спеціального виду конструкції, які, дозволяють об’єднати ряд змінних різних типів в одне ціле. Крім власне даних, класи зазвичай включають підпрограми (в термінології java - методи) і можуть включати блоки(сукупність інструкцій між фігурними дужками {}) та інші класи(внутрішні класи). Таким чином утворюються нові типи даних.Роз’яснення принципів побудови і роботи з класами доволі громіздка тема, тому тут розглянемо лише спрощені основи їх роботи і створення. Детальніше дивіться розділ присвячений класам. Розглянути зараз необхідно через те, що Java повністю об’єктно-орієнтована мова і з класами та пов’язаними з ними методами Ви стикатиметесь на кожному кроці. Зокрема навіть вивід даних System.out.prinln(); - здійснюється за допомогою класу System та методу println().
Для прикладу розглянемо наступну задачу: «Ви фанат збору 1 гривневих монет:). Назбирали їх чимало і хочете купити невеличкий сейф, щоб туди вмістилася ваша вся колекція і вбудувати цей сейф у стіну, щоб його з вашою колекцією не вкрали:). В інтернет-магазині вказані розміри сейфу. Постає питання, який же сейф вибрати? Оскільки сейф не один, то щоб не розраховувати вручну кожного разу об'єм сейфу, Ви захотіли написати відповідну програму.»
І так маємо: >>> Читати далі>>>>
ІТ блог: Поліморфізм в Java
ІТ блог: Поліморфізм в Java:
Поліморфізм — важливий механізм в програмуванні, що дозволяє використовувати спільний інтерфейс для обробки даних різних спеціалізованих типів. Прикладом може слугувати перевантаження методів. З появою ООП концепція поліморфізму розширилась. В контексті об'єктно-орієнтованого програмування, найпоширенішим різновидом поліморфізму є здатність екземплярів підкласу грати роль об'єктів батьківського класу, завдяки чому екземпляри підкласу можна використовувати там, де використовуються екземпляри батьківського класу.
Вступ у поліморфізм об'єктів
Так, уявімо, у нас є клас Солдат та на його основі створено класи Генерал та Сержант. Логічно, що кожен Генерал є солдатом і кожен Сержант є солдатом, проте не кожен солдат є Генералом чи Сержантом. Тож Генерал може виконувати функції звичайного солдата, а солдат функції Генарала не зможе. Все вищесказане в ООП реалізовується через об’єктні змінні, які є поліморфними. Тому в коді ми можемо писати наступні інструкції: >>>Читати далі>>>>
Поліморфізм — важливий механізм в програмуванні, що дозволяє використовувати спільний інтерфейс для обробки даних різних спеціалізованих типів. Прикладом може слугувати перевантаження методів. З появою ООП концепція поліморфізму розширилась. В контексті об'єктно-орієнтованого програмування, найпоширенішим різновидом поліморфізму є здатність екземплярів підкласу грати роль об'єктів батьківського класу, завдяки чому екземпляри підкласу можна використовувати там, де використовуються екземпляри батьківського класу.
Вступ у поліморфізм об'єктів
Так, уявімо, у нас є клас Солдат та на його основі створено класи Генерал та Сержант. Логічно, що кожен Генерал є солдатом і кожен Сержант є солдатом, проте не кожен солдат є Генералом чи Сержантом. Тож Генерал може виконувати функції звичайного солдата, а солдат функції Генарала не зможе. Все вищесказане в ООП реалізовується через об’єктні змінні, які є поліморфними. Тому в коді ми можемо писати наступні інструкції: >>>Читати далі>>>>
ІТ блог: Вступ в Java - Привіт Світ!
ІТ блог: Вступ в Java - Привіт Світ!: Hello world! У відеоуроці проводиться знайомство з Java та наводиться приклад написання HelloWorld у текстовому редакторі та у Eclipse. ... >>Читати далі>>>>
вівторок, 31 березня 2020 р.
Java vs Python

ІТ блог: Java vs Python: Так склалось, що останнім часом багато працюю з аналізом даних на Python. Попередньо опробував Matlab та R, після яких перейти на Python не склало взагалі ніяких проблем. Проте досвіду в програмуванні у мене все таки більше на Java, тому тут опишу Python з точки зору Java програміста... >>Читати далі>>>>>
вівторок, 24 березня 2020 р.
Засіб для роботи з базами даних DBeaver
Щодо плюсів то можу сказати, що як засіб роботи з готовою базою даних DBeaver доволі зручний. Тут можна переглянути ER діаграму бази даних, написати скрипт і запустити SQL запити з переглядом їх результатів, редагувати дані в таблицях і отримувати деякі статистичні показники по стовпчиках як то середнє, мода, сума. В платній версії є можливість побудови стовпчикових діаграм.
Читати далі >>>>>
Підписатися на:
Дописи (Atom)