DDDEN!SSS, они-то проще, только они показывают не столько то, как написать осмысленное приложение с использованием ООП, сколько то, как зайдействовать отдельные API. Подобные вещи и так с SDK найдутся. И, кроме того, я бы не сказал, что они показывают хороший стиль программирования, а это для новичка тем более важно.
Malcolm, хороший стиль приходит после того, как программа начинает работать, а добавить в неё нечего. Новичку лучше сначала понять основы языка, написать несколько программ, а после того, как он поймет, что не знает как сделать какую-то крутую финтефлюшку, он начнет читать статьи и документацию и придет к хорошему коду. Ну, если человек, конечно, поймет зачем это надо.
DDDEN!SSS, да какая разница сколько? Важно то, как ты свой код будешь писать. Если по плохому стилю следовать, то и код будешь строгать фиговый. И, что самое главное, будешь думать, что делаешь все как надо. Pavlus, во-первых, документация учит использовать API, но писать грамотный код она не учит. Чтобы писать грамотный код, нужно читать такие книги, как Code Complete (Совершенный Код). Во-вторых, зачем учиться плохому, а потом переучиваться, когда лучше сразу учиться хорошему? Я имею в виду не использование API, а то, как форматируется файл, называются переменные и методы, располагаются объявления переменных и так далее - самые основы. Это только кажется мелочью, а без них потом окажется сложно. Когда кода становится много, а пишешь неаккуратно, действительно понимаешь, что что-то ты делаешь не так. Но гораздо лучше, если подскажут сразу, как надо делать, чтобы хоть пытаться писать правильно с самого начала.
Парни, подскажите как исправить код. Рисуется квадрат, который перемещается с лево на право, когда он доходит до позиции endX-25 должен вызываться метод exit и приложение должно закрыться, но квадрат просто останавливается.. Вот часть кода public void run() { while (true) { // сравниваем позицию if(position>endX-25) { main.exit(); } // увеличеваем позицию на 1 position++; // обновляем экран repaint(); // останавливаем цикл на 20 милесекунд try { Thread.sleep(30); } catch (java.lang.InterruptedException zxz) {} } } вот исходники если надо waper.ru/file/1579848/download/ffac38c0da04d5bcaaf/main.zip
Malcolm, это и так понятно.ты не правильно понял. У меня в главном классе прописано public void exit() { notifyDestroyed(); } вот на это я и хочу сделать действие,в самом главном классе работает например: if(c==cmdExit) { exit(); }
Metaler, я бы после строчки Main.exit() предложил вернуться из метода через return, чтобы поток завершился. Кстати, должен сказать, что форматирование у тебя жуткое, даже не знаю, как ты в такой программе ориентируешься. Очень советую посмотреть, например, ту же Игра Жизнь by Malcolm (с открытыми исходниками), чтобы понять, как лучше.
15 фев 2011 в 17:32