[Useful Info] IntelliJ ? Как да си направим живота по-лесен.
Здравейте,
Инсталирах си IntelliJ IDEA 14.1 Community Edition.
Защо InetelliJ, а не Eclipse? Попаднах на тази Статия, която ми се стори интересна.
Срещнах малко проблеми, също открих услеснения и реших да ги събера в една тема.
Всеки който иска да помогне да спестим малко време в търсене на упътвания за IntelliJ, като зададе въпрос или напише отговор, е добре дошъл
-- РЕШЕНИЯ --
1. Инсталиране на Windows 7 64 bit, или как да си спестим 2 часа.
- Инсталирах си Java JDK или по-точно файла: jdk-8u60-windows-x64.exe
- Инсталирах си IntelliJ Community Edition. Програмата създаде "пряк път" на работния плот и аз я стартирах. Едно от първите неща, които трябваше да направя е да свържа IntelliJ с SDK (мисля, че в Eclipse това става автоматично). Е да де, ама не. Intellij не можа да открие, току - що инсталираната JDK. А аз успях да я открия! Поне по пет начина, включително и от конзолата. След доста ровичкане в нета ми просветна, че може да има несъответсвие във версиите!
Решение:
- Прекият път "IntelliJ IDEA Community Edition 14.1.4" на десктоп-а сочи към 32 bit - ова версия, по подразбиране. Е, нормално е 32 bit- ова версия да не може да открие 64 bit SDK.
- В същата папка където е idea.exe има още един файл idea64.exe. Трябва да се пренасочи прекия път да сочи към втория файл.
- Не знам на други версии на Windows 64 bit, дали ще се получи същото, но е добре да се знае.
2. Как да нагласим Еnvironment Variable in Windows 7 64 bit powered by@malkstor
To be continued .....
-- НАСТРОЙКИ --
1. Активиране на Zoom
- Докато сте в програмата натиснете Ctrl+Alt+S, ще се отвори прозорец Settings.
- Изберете Editor, след това General, и сложете отметка върху "Change font size (Zoom) with Ctrl + Mouse Wheel"
2. Предишни версии
- Дясно копче на мишка върху който и да е клас
- От менюто изберете Local History след това Show history.
- Можете да посочите версия, след това дясно копче + Revert
3. Encoding UTF-8
- Натиснете Ctrl+Alt+S
- Натиснете Editor от менюто изберете File Encodings
- Горе в опциите можете да нагласите IDE Encoding и Project Encoding
To be continued .....
-- ПО-ЧЕСТО ИЗПОЛЗВАНИ "SHORTCUTS" --
1. Напишете "psvm" + Tab = public static void main(String[] args)
2. Напишете "sout" + Tab = System.out.println();
3. Натиснете Ctrl + D = прави копие на реда на който сте в момента.
4. Натиснете Ctrl + Alt + L (IntelliJ) = Ctrl + KD (Visual Studio) = reformat code style; powered by @aanguelov
5. Натиснете CTRL + / = За да закоментирате и откометирате код; powered by @D.Kostadinov
6. Натиснете Alt + Insert = генерира Getter and Setter
To be continued .....
Да, и в stackoverflow така пишат за Java:
http://stackoverflow.com/questions/925423/is-it-better-practice-to-use-string-format-over-string-concatenation-in-java
Но на мен и String.format ми работи, а за него пишат:
"I'd suggest that it is better practice to use String.format(). ...."
"If you are looking for readability the String.format thing is the much clearer"
Тъй че аз си оставам на String.format засега.
В C# изрично ни бяха казали да избягваме конкатенация и изобщо нямаше да ми дойде на ум, че там е проблема, докато не пробвах всички други варианти за лимит на времето.
Елена, става въпрос за много повторения на конкатенация и ако може, да се замести със СтрингБилдър. Сигурен съм, че си наясно де ... ; )
От друга страна, форматирането е съвсем друга хава. Освен да се създаде съвсем нов стринг, оригиналния трябва да се парсне, за да се разбере къде какво има за наместване. В C# String.Format всъщност директно използва .AppendFormat метода на стрингбилдъра, за Джава не знам.
Погледнах ти решението. Доста хитро си изнесла третия вложен цикъл и явно това компенсира String.format.
Аз не съм ползвала конкатенация в C#, винаги съм я избягвала, но е добре да се има в предвид, че в Java седят по друг начин нещата.
Изобщо не си падам по конкатенацията- n на брой + и " направо си ме обръкват.
Наблягам на този порблем тъй като е много вероятно на изпита да има вложени цикли. Аз реших уж лесната задача, но после загубих над час и половина, два да се чудя защо гърми от към време и ни най-малко не се сещах да сложа конкатенация вместо String.format. Накрая погледнах авторското решение и видях, че е с конкатенация. Напарвих и аз така и тръгна.
И стринг билдъра ми е гърмял между другото на една от изпитните задачи на КПК откъм памет и там беше решението да не правя буфер със стринг билдъра, а да печатам при всеки цикъл.
Нямаше и да предположа за този проблем, тъй като C# е наследник на Java, но явно C# има доста подобрения при стринговете. Там имахме цяла лекция защо конкатенацията не е оптимален вариант- видовете памет и тн.
В Java също така стринг билдъра, няма апенд формат. Може и да има, но в някоя странична библотека и го направих на едно от домашните с апендване на String.format.
PS Като цяло не съм протовник на Java, но определено ми липсва C# :)