субота, 2 листопада 2013 р.

Android: перші кроки з Layouts

     Layout, що українською можна перекласти як макет, визначає візуальну структуру (схему) для інтерфейсу користувача, наприклад UI для актівіті (тут вже підібрати, чи скоріше видумати, україномовний відповідник для  activity трохи складно), чи для віджету (app widget). Макет визначає логічну схему, за якою будуть розташовуватись візуальні об'єкти  на екрані, наприклад, кнопки, текстові поля, тощо. Тобто, чи будуть вони розміщені один під одним, чи один за одним, чи у вигляді таблиці, чи у вигляді мережі. Серед стандартних макетів можна назвати AbsoluteLayout, FrameLayout, LinearLayout, RelativeLayout, TableLayout, GridLayout. Більше про них можна почитати на гуглівському сайті developer.android.com.

      Як же практично вибрати макет для актівіті? Найпростіше це зробити візуально, в графічному редакторі XML для актівіті. Потрібно зазначити, що одне актівіті може мати декілька макетів із довільною ієрархічною структурою.  Перший лейаут, який буде кореневим для інших (якщо інші звичайно будуть), можна призначити з панелі Outline, що знаходиться справа від графічного представлення актівіті (активною має бути закладка Graphical Layout для файлу activity_main.xml, чи як там називається ваше актівіті). По замовчуванню там вже буде стояти якийсь тип макету. При бажанні його можна змінити, якщо з контектного меню назви макета (на малюнку LinearLayout), вибрати команду Change Layout... :


пʼятниця, 1 листопада 2013 р.

Android: імпортувати проект в Eclipse

     Програмка для Андроіда складається з купи папочок і файликів. Тому, якщо потрібно подивитись чужий проект, то просто скопіювати java-код не вийде - проект може, і скоріше за все так і буде, не запуститися. Адже код працює у зв'зці з XML- файлами, та іншими ресурсними файлами. Тому потрібно імпортувати весь проект.

     Для цього в Eclipse (Kepler Release) в меню File є команда Import... В  діалозі  Import із списку Select an import source: вибираємо папку Android і в ній пункт Existing Android Code Into Workspace
   

субота, 12 жовтня 2013 р.

Формули в LibreOffice

     Для практичної роботи з курсу "Структури даних та аналіз алгоритмів" потрібно було здати електронний файл в форматі PDF. В тексті потрібно було використовувати формули та представити графічно дерева даних (trees, arbres). Можна було це все написати вручну, відсканувати, експортувати зображення в PDF і відправити на перевірку. Але я вирішив зробити це в офісному безкоштовному пакеті  LibreOffice. Заодно поюзаю його в більш інтенсивному режимі. Бо зазвичай використовую програму тільки для набору тексту, а коли потрібно зробити щось специфічне, то в голову приходять слова "а в Word'і все було так просто...". Але всі біди від ліні.

     Дерева створив використавши інструменти для креслення з панелі Drawing, яку можна відобразити командою View / Toolbars / Drawing. В результаті вийшло ось таке:

    

неділя, 6 жовтня 2013 р.

Лекції Масачусетського технологічного інституту

     Надибав курс відеолекцій на ресурсі videolectures.net від відомого  MIT  - Масачусетського технологічного інституту (Massachusetts Institute of Technology). Курс називається Introduction to Computer Science and Programming.




     Натрапив на нього шукаючи пояснення теорії асимптотичного аналізу алгоритмів і перша лекція, яку я переглянув, називалась Efficiency and Order of Growth від професора John Guttag.

пʼятниця, 23 серпня 2013 р.

Сертифікат Java

     Вирішив отримати собі сертифікат Java 7. Сподіваюсь, що це прикрасить моє резюме. Здавати планую наступного літа, якраз тоді маю закінчити свої курси програмування.

     Для початку потрібно розібратись із системою тестів. На сайті Oracle якось туманно написано. Але з допомогою Ґуґла трохи прояснив для себе ситуацію. Починати потрібно із сертифіката найнижчого рівня, який називається Oracle Certified Associate, Java SE 7 Programmer (Оракл його ще називає Java SE 7 Programmer I). Запис на здачу коштує 245 американських доларів. Тест триває 140 хвилин та складається з 90 питань тестового типу з однією, або декількома можливими правильними відповідями. Щоб пройти тест, потрібно правильно відповісти на 77 % питань.

     Наступний крок - здача тесту  Oracle Certified Professional, Java SE 7 Programmer (інша назва Java SE 7 Programmer II). Його ціна така сама -  245 доларів.  Тест триває 150 хвилин та складається з 90 питань тестового типу з однією, або декількома можливими правильними відповідями. Щоб пройти тест, потрібно правильно відповісти на 65 % питань.

     Щоб актуалізувати свій сертифікат, який ви отримали для однієї з попередніх версій Джави, потрібно пройти тест Upgrade to Java SE 7 Programmer, який також буде коштувати 245  $.

     Oracle люб'язно влаштовує тренінги для підготовки, але ціна, любі друзі, зашкалює - від  1 774  $ до 2 400  $. Шо???


     
      Тому, швидше за все, готуватись буду сам. Ну не сам, а з книжками. А з якими саме - про це напишу в наступних постах.
     

пʼятниця, 21 червня 2013 р.

Java: параметри по-замовчуванню

     Java, на відміну від С++, не дозволяє створювати методи із параметрами по-замовчуванню.

     Наприклад в С++ ви можете записати:

void MyFunction (String param1, int param2, bool param3=false);

     В цьому випадку третій параметр є необов"язковим, і якщо його не задавати, то функція візьме значення по-замовчуванню, яке присвоєне в оголошенні функції (в даному прикладі - param3=false) .

     Але в Java подібний код неможливий. Якщо ж ми все таки хочемо створити щось подібне, то треба або просто в тілі метода присвоїти бажане значення, або викликати перезавантажений аналог цього метода за допомогою ключового слова this:

public MyFunction(String param1, int param2)
{
    this(param1, param2, false);
}

      this викличе перезавантажений метод з трьома вхідними параметрами:
public MyFunction(String param1, int param2, boolean param3)
{
    .......
}
      Власне ця заборона на використання параметрів по-замовчуванню була зроблена для можливості однозначного виклику перезавантажених функцій. Бо якщо, наприклад, клас має перезавантажений метод, один з варіантів якого має три параметри, другий - два, а третій два і один по-замовчуванню, то якби можна було не вказувати у виклику параметр по-замовчуванню, який варіант компілятор повинен вибрати?

середа, 22 травня 2013 р.

NetBeans: як змінити мову інтерфейсу.

    Інтегроване середовище розробки NetBeans для Java по замовчуванню встановлює мову інтерфейсу, яка відповідає системній мові Windows. Для мене більш зручно працювати з англійським інтерфейсом, але нажаль в  NetBeans немає прямого налаштування для швидкої локалізації.

    На блозі Tao's Sun Blog , що знаходиться на сайті blogs.oracle.com, знайшов таку пораду:
  • відкрити папку, де встановлено програму, наприклад C:\Program Files\NetBeans 7.3\etc;
  • в Блокноті (чи іншому текстовому редакторі) відкрити конфігураційний файл netbeans.conf (на всякий випадок зробіть собі копію цього файлу);
  • знайти в ньому стрічку (скористайтесь командою Блокнота Правка/Знайти...)

    netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-XX:PermSize=32m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.java2d.noddraw=true -J-Dsun.java2d.dpiaware=true -J-Dsun.zip.disableMemoryMapping=true -J-Dsun.awt.disableMixing=true"

  • після останньої літери останнього слова, але перед лапками, що закривають стрічку, поставте пробіл і вставте наступне:

    -J-Duser.language=en -J-Duser.region=US

  • збережіть файл і перезапустіть NetBeans.
І voilà!