Выбор программной среды для обучения и разработки прикладных программ в высшем учебном заведении
Рассмотрение вопросов эффективного обучения студентов языку программирования. Исследование примера создания простейшей программы на Java и Delphi. Характеристика и разбор основных этапов создания программы. Определение задачи создания оконного приложения.
Рубрика | Педагогика |
Вид | статья |
Язык | русский |
Дата добавления | 25.12.2017 |
Размер файла | 97,7 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Выбор программной среды для обучения и разработки прикладных программ в вузе
С.Н. Талипов
В статье рассматриваются вопросы эффективного обучения студентов языку программирования. Приводится пример простейшей программы на Java и Delphi, разбираются этапы создания программы.
Исследуем вопрос о том, какой программной среде лучше учить будущих разработчиков прикладного программного обеспечения в вузе. Обратимся к рейтингам языков программирования, приведенным на сайте http://www.tiobe.com и http://www.eweek.com/. Данные рейтинги показывают (на февраль 2012г.), что на первом месте находится Java - 17%, на втором C - 16%, на третьем C# - 9%, на 11 месте Delphi - 2%. Означает ли это, что на Java в 11 раз удобней и быстрее разрабатывать программы и другими средами можно пренебречь в обучении?
Рассмотрим, к примеру, задачу создания оконного приложения, рассчитывающего формулу «z=x/y», на Java и Delphi.
Для разработки программы на Java и на Delphi необходимы следующие этапы:
программирование java delphi оконный
Рассмотрим теперь наглядность и сложность реализации поставленной задачи. Основной код модуля программы на Java следующий:
package demo;
import java.awt.Dimension; import java.awt.Font; import java.awt.Rectangle; import java.awt.Toolkit;
import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.text.DecimalFormat; import javax.swing.JButton;
import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea;
public class Frame1 extends JFrame { private JButton jButton1 = new JButton();
private JTextArea jTextArea1 = new JTextArea(); private JTextArea jTextArea2 = new JTextArea(); private JTextArea jTextArea3 = new JTextArea(); private JLabel jLabel2 = new JLabel();
private JLabel jLabel3 = new JLabel(); private JLabel jLabel4 = new JLabel(); private JLabel jLabel5 = new JLabel();
public Frame1() { try { jbInit();
} catch (Exception e) { e.printStackTrace(); }
}
private void jbInit() throws Exception { this.getContentPane().setLayout(null); this.setSize(new Dimension(302, 216)); this.setTitle(«Простейшая программа на Java»); this.setResizable(false);
jButton1.setText(«РЕШИТЬ»); jButton1.setBounds(new Rectangle(35, 100, 205, 40)); jButton1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) { jButton1_actionPerformed(e);
} });
jTextArea1.setBounds(new Rectangle(95, 15, 140, 20));
jTextArea1.setFont(new Font(«Tahoma», 0, 12));
jTextArea2.setBounds(new Rectangle(95, 40, 140, 20));
jTextArea2.setFont(new Font(«Tahoma», 0, 12));
jTextArea3.setBounds(new Rectangle(95, 70, 140, 20));
jTextArea3.setFont(new Font(«Tahoma», 0, 12)); jTextArea3.setEditable(false); jLabel2.setText(«a=«);
jLabel2.setBounds(new Rectangle(40, 15, 34, 14)); jLabel3.setText(«b=«);
jLabel3.setBounds(new Rectangle(40, 40, 35, 15)); jLabel4.setText(«c=a/b»);
jLabel4.setBounds(new Rectangle(40, 65, 35, 15)); jLabel5.setText(«by Talipov SN, Pavlodar, 2012»); jLabel5.setBounds(new Rectangle(65, 155, 165, 15)); this.getContentPane().add(jLabel5, null); this.getContentPane().add(jLabel4, null); this.getContentPane().add(jLabel3, null); this.getContentPane().add(jLabel2, null); this.getContentPane().add(jTextArea3, null); this.getContentPane().add(jTextArea2, null); this.getContentPane().add(jTextArea1, null); this.getContentPane().add(jButton1, null);
}
private void jButton1_actionPerformed(ActionEvent e) {
// ОСНОВНОЙ КОД ПРОГРАММЫ
String a, b, c; // Строковые переменные Double x, y, z; // Вещественные переменные
a = jTextArea1.getText(); // Получение значения из окна 1 b = jTextArea2.getText(); // Получение значения из окна 2 try { // Начало защищенного блока
x = Double.parseDouble(a); // Преобразование текстового значения в вещественное y = Double.parseDouble(b); // Преобразование текстового значения в вещественное z = x / y; // Вычисление выражения
// Проверка на: 0/0, z/0
if ((Double.isNaN(z) == true) || Double.isInfinite(z) == true) {
throw new Exception(«error»); // Если нет решения, то генерирование ошибки
}
DecimalFormat df = new DecimalFormat(«#0.00»); // Описание формата вещественного числа c = String.valueOf(df.format(z)); // Преобразование числа в строку
jTextArea3.setText(c); // Вывод ответа в окошко
} catch (Exception ee) { // Обработчики ошибок защищенного блока Toolkit.getDefaultToolkit().beep(); // Звуковой сигнал
jTextArea3.setText(«Неверные данные!»); // Обработка ошибки ввода или вычисления
} // Конец защищенного блока
}
}
Рассмотрим аналог программы на Delphi: unit Demo;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;
type
TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; Label3: TLabel;
Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Button1: TButton;
procedure Button1Click(Sender: TObject); private
{ Private declarations } public
{ Public declarations } end;
var Form1: TForm1; implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
// ОСНОВНОЙ КОД ПРОГРАММЫ
var x,y,z: real; // Описание переменных begin
try // Начало защищенного блока
x:=strtofloat(edit1.Text); // Получение значения x из окна 1 y:=strtofloat(edit2.Text); // Получение значения y из окна 1 z:=x/y; // Вычисление выражения edit3.Text:=formatfloat('#0.00',z);
except // Обработчики ошибок защищенного блока
edit3.Text:='Неверные данные!';// Обработка ошибки ввода или вычисления beep; // Звуковой сигнал
end; // Конец защищенного блока end;
end.
При сравнении двух программ получается, что на Java необходимо написать 353 слова-примитива, на Delphi - 116 слов, что более чем в 3 раза меньше. Выходит, что на Java в три раза больше текста в коде программы и в три раза больше этапов в создании готовой программы, причем в программе на Java больше слов-примитивов не из-за синтаксиса, а из-за сложности языка программирования. А если было бы необходимо решить задачу с использованием баз данных, то сложность различалась бы не в разы, а в десятки раз.
Какой же язык программирования предпочесть для реализации поставленной задачи? По быстроте написания, по простоте и предварительной подготовки программиста однозначно выигрывает Delphi из двух рассмотренных. По платформо-незавизимости и расширяемости - Java. Поэтому ограничивать будущих специалистов по программированию одним языком программирования, хоть и наиболее распространенным и передовым, представляется неверным и узким подходом, что может уменьшить количество программистов-практиков на рынке труда.
Размещено на Allbest.ru
...Подобные документы
Характеристика этапов и основных задач информатизации образования. Особенности использования компьютерных технологий и интернет-ресурсов в процессе обучения иностранному языку. Рассмотрение возможностей программы для создания презентаций PowerPoint.
дипломная работа [2,5 M], добавлен 29.11.2011Особенности профессионально-ориентированного обучения второму иностранному языку в неязыковом вузе в условиях искусственного субординативного трилингвизма. Основные методики преподавания иностранных языков в художественном высшем учебном заведении.
дипломная работа [175,7 K], добавлен 01.12.2017Применение диалогового обучения в профессиональном взаимодействии преподавателя и студентов. Цели учебного диалога при изучении педагогических дисциплин. Принципы, правила его организации. Использование диалога как метода гражданского воспитания учащихся.
реферат [14,5 K], добавлен 27.01.2016Цели и задачи преподавания психологии в высшем учебном заведении. Принципы личностно–ориентированного профессионального обучения. Анализ государственного образовательного стандарта. Разработка курса "Психология" для студентов инженерных специальностей.
дипломная работа [122,9 K], добавлен 23.08.2011Основные понятия и принципы объектно-ориентированного программирования. Структура программы, типы данных, операторы языка в Object Pascal. Интерфейс интегрированной среды разработки Delphi. Методика обучения визуальному программированию, контроль знаний.
курсовая работа [442,5 K], добавлен 09.07.2012Особенности обучения учащихся с нарушением слуха. Специфика обучения школьников технологиям создания гипертекста. Разработка программы для обучения школьников 11-х классов с нарушением слуха технологиям создания Web–страниц с помощью языка HTML.
дипломная работа [3,9 M], добавлен 25.04.2011Педагогический анализ научных, учебных и педагогических аспектов методики обучения технологии web. Определение методических принципов построения работы и характеристика этапов процесса создания школьного сайта спортивной тематики по технологии web 2.0.
дипломная работа [247,0 K], добавлен 23.04.2011Методика обучения иностранному языку в школе. Способы повышения качества обучения. Применение метода проектов, Интернет-ресурсов и программы создания презентаций. Разработка урока английского языка с применением информационно-коммуникационных технологий.
курсовая работа [53,3 K], добавлен 08.06.2012Изучение организационных документов учреждения. Организационная структура университета, системы документации. Нормативно-методические документы, регламентирующие правила создания и оформления бумаг. Порядок их приема от поступающих (абитуриентов).
отчет по практике [21,1 K], добавлен 26.01.2014Теоретические основы особенностей создания иноязычной креативной дидактической среды на средней ступени обучения общеобразовательной школе. Анализ учебников иностранного языка средней ступени обучения в школе с точки зрения создания иноязычной среды.
дипломная работа [56,7 K], добавлен 30.07.2017Анализ программы производственного обучения, характеристика и учебно-воспитательные задачи программы. Описание рабочего места учащегося и мастера профессионального обучения, подготовка мастера профессионального обучения к занятием по вождению автомобиля.
курсовая работа [46,2 K], добавлен 03.03.2011Анализ программы производственного обучения экстремальному вождению автомобиля. Изучение нормативной и учебно-программной документации. Учебно-воспитательные задачи и темы программы. Описание рабочего места учащегося и мастера профессионального обучения.
курсовая работа [42,2 K], добавлен 17.11.2014Психолингвистическая основа школьного многоязычия. Исследования современных методик обучения английскому языку как второму иностранному (коммуникативная, интенсивная). Разработка программы обучения. Психолингвистические требования к методике обучения.
курсовая работа [95,9 K], добавлен 25.02.2011Интеграция различных методов и технологий для создания системности обучения. Методы и формы обучения и воспитания для создания здоровьесберегающих условий в учебно-воспитательном процессе. Развитие познавательной активности и мотивации к учебе у детей.
презентация [4,2 M], добавлен 14.12.2009Психолого-педагогические основы исследования мотивов учения. Диагностическая программа изучения мотивации учебной деятельности студентов в высшем заведении. Исследование эффективности профессионального обучения молодежи. Повышение уровня образованности.
курсовая работа [71,9 K], добавлен 11.03.2014Специфика методики обучения иностранному языку на средней ступени. Цели и задачи обучения иностранному языку. Различные виды упражнений как ведущие средства обучения на средней ступени. Активные методы обучения и их реализация на средней ступени.
курсовая работа [60,1 K], добавлен 20.03.2011Обозначение цели и задания проблемной лекции. Рассмотрение основных требований к реализации данного метода в учебном процессе в высшем учебном заведении. Анализ предложенного сценария проблемной лекции и рекомендации по его эффективному использованию.
курсовая работа [372,2 K], добавлен 20.10.2014Дидактические и методические основы обучения алгоритмизации и программированию в рамках углубленного курса информатики для технологического профиля. Методика изучения программирования на языке Java" с применением элементов электронного обучения.
дипломная работа [2,5 M], добавлен 13.12.2017Психолого-педагогические основы обучения физике. Цикл познания в физике как науке и физике как учебном предмете. Способы создания проблемных ситуаций на уроках. Индукция и дедукция в методах обучения. Основные требования к оборудованию кабинетов.
шпаргалка [74,5 K], добавлен 25.10.2013Классификация и характеристика форм и методов обучения, критерии их выбора. Способы активизации познавательной деятельности слушателей. Организация практического занятия в высшем учебном заведении. Порядок рассмотрения сообщений о преступлениях.
дипломная работа [96,4 K], добавлен 23.02.2015