Здравствуйте! Сегодня: Пн, 26 Окт 2020, Ваш IP: 54.236.35.159 Войти через loginza
 
Вход | Регистрация | Забыли пароль?
Мой Kbyte.Ru
> Список форумов Kbyte.Ru - - Общие вопросы программирования
+ Создать новую тему Страница: 1
Тема: C# · +  +  дата добавления: 05.06.2013 / 14:27
Автор темы:
JustArt
JustArt
тем: 95 / ответов: 675 / благодарностей: 3 / репутация: 35
Url: crash.kbyte.ru
Skype: ghostman12.12.2012
ответов: 675
создал(а) тем: 95


Ии так я начал по малу учить C# вот проблема ну сначала код
using System;
class Exmple
{
    static void Main()
    {
        string text = "Please write (Exit)";
        
        Console.WriteLine(text);
        string test;
        test = Console.ReadLine();
        if (test == "exit")
        {
            return;
        }
        else
        {
            Console.WriteLine(text);
        }
    

    }
}
как сделать так что бы после не правильного ввода слова "Exit" программа сного просила нам его написать и не закрывалась до тех пор пока слово "Exit" не будет правильно введено.
--
Du Main Du BA DU
 
Ответ # 1 # · +  +  дата добавления: 05.06.2013 / 14:36
Автор ответа:
Алексей Немиро
Алексей Немиро
тем: 534 / ответов: 5130 / благодарностей: 325 / репутация: 211
Чашка Kbyte.Ru>>
Url: aleksey.nemiro.ru
Icq: 261779681
Skype: alekseynemiro
ответов: 5130
создал(а) тем: 534


Ждать ввода правильного варианта в цикле:
while(Console.ReadLine() != "exit")
{
}
Тоже самое:
while(Console.ReadLine() != "exit")
{
  Console.WriteLine("Введите exit!");
}
Более "сложный" вариант:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ReadLine
{
  class Program
  {
    static void Main(string[] args)
    {
      
      while (true)
      {
        string line = Console.ReadLine();
        switch (line.ToLower())
        {
          case "выход":
          case "exit":
            // можно выходить
            return;

          case "который час":
          case "который час?":
            Console.WriteLine(DateTime.Now);
            break;
          default:
            Console.WriteLine("Введите что-нибудь из того, что я пойму.");
            break;
        }
      }
    }
  }
}
В Visual Basic .NET все будет аналогично, только синтаксис немного другой.

А с чего вдруг на C# потянуло? "Черный пояс" по Visual Basic .NET разве уже есть? :)
 
Ответ # 2 # · +  +  дата добавления: 05.06.2013 / 17:10
Автор ответа:
Shark1
Shark1
тем: 3 / ответов: 153 / благодарностей: 5 / репутация: 82
Чашка Kbyte.Ru>>
ответов: 153
создал(а) тем: 3


А с чего вдруг на C# потянуло? "Черный пояс" по Visual Basic .NET разве уже есть? :)


 
Ответ # 3 # · +  +  дата добавления: 05.06.2013 / 19:15
Автор ответа:
JustArt
JustArt
тем: 95 / ответов: 675 / благодарностей: 3 / репутация: 35
Url: crash.kbyte.ru
Skype: ghostman12.12.2012
ответов: 675
создал(а) тем: 95


А с чего вдруг на C# потянуло? "Черный пояс" по Visual Basic .NET разве уже есть? :)
Для MEB(Microsoft Expression Blen) 4 нужно использовать только 2 языка VB и C#. Лучше учить C#
--
Du Main Du BA DU
 
Ответ # 4 # · +  +  дата добавления: 05.06.2013 / 20:20
Автор ответа:
Алексей Немиро
Алексей Немиро
тем: 534 / ответов: 5130 / благодарностей: 325 / репутация: 211
Чашка Kbyte.Ru>>
Url: aleksey.nemiro.ru
Icq: 261779681
Skype: alekseynemiro
ответов: 5130
создал(а) тем: 534


Для MEB(Microsoft Expression Blen) 4 нужно использовать только 2 языка VB и C#
Можно, конечно и оба сразу, но лучше остановиться на одном. Оба использовать не обязательно ;-)
Лучше учить C#
Лучше учить .NET Framework. Язык играет второстепенное значение.
Visual Basic .NET проще, чем C#.

Хорошие знания, а точнее понимание, .NET Framework позволит легко мигрировать на другой язык.

Фишек C# ты все равно не сможешь использовать, точнее понять, ибо даже не сможешь сказать, почему в Visual Basic .NET не лучше. А вот специфика C# скорее всего будет часто ставить тебя в тупик на ровном месте.

Из преимуществ Visual Basic .NET перед C#, навскидку:

- Более человеческий синтаксис:
If ... Then - Если ... то
End If - Конец Если
Exit For - Выход из For (цикла)
Exit While
Exit Sub
...
Public Function Test() As Integer - Публичная функция Test типа Integer (целое число)
В C# меньше слов, но без понимания языка будет сложно с ним разобраться.

Базовых знаний английского достаточно, чтобы понять Visual Basic .NET. Если базовых знаний английского нет, то можно ради интереса перевести бейсик на русский и получить эти самые знания, уехать в Америку и свободно общаться с местными программистами людьми на бейсике :)

- Нет необходимости в явной типизации:
Dim a As String
a = 123
a = Now
Dim obj As New With { .id = 123, .name = "Test" }
Console.WriteLine(obj.name)
В C# такое не прокатит.

- Visual Studio для Visual Basic .NET проще:
Например, в проектах Windows Forms по умолчанию скрыт код, содержащий описание элементов формы (типа Form1.Designer.vb). И неспроста, ибо этот код генерируется автоматически и если туда неправильно влезть, можно поломать форму, и/или потерять данные. В C# все открыто и доступно для редактирования, но вероятность поломать проект от этого не исчезает. И даже напротив, возрастает. Допустим, добавил ты обработчик события нажатия кнопки. Затем он тебе стал не нужен, ты просто удаляешь его код, и все, скорее всего останется хвост обработчика в коде дизайнера. Проект не будет компилироваться. Ты, во-первых, скорее всего с текущим уровнем не сможешь понять, что вообще происходит и что делать. А во-вторых, если во время удаления хвоста случайно зацепишь что-нибудь важное, можешь поломать форму. Если форма сложная, содержит много элементов, которые ты несколько часов вырисовывал в конструкторе форм, то ситуация будет малоприятная.

Если продолжить тему обработчиков событий, в Visual Basic .NET их проще цеплять.
Вот пример:
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
End Sub
Это обработчик нажатия на кнопку Button1.
К нему можно прицепить еще несколько кнопок:
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click, Button2.Click, Button3.Click
End Sub
Теперь обработчик может обрабатывать клики по кнопкам Button1, Button2 и Button3.
В C# нет Handles и придется цеплять обработчик к каждой кнопке отдельно.
Помню, особенно это не удобно было в проектах ASP .NET WebForms, приходилось много лишнего кода писать, либо использовать не очень красивые html-атрибуты, типа OnClick. В общем в бейсике этот момент сделать очень просто и удобно.

- В Visual Basic .NET много вспомогательных классов и методов. В C# придется все писать самому, в твоем случае, копировать туда-сюда, а точнее искать, а потом копировать-копировать и снова копировать :)


В общем, рекомендую продолжать ковырять Visual Basic .NET. На C# перейти будет просто, когда придет время.
 
Ответ # 5 # · +  +  дата добавления: 05.06.2013 / 20:27
Автор ответа:
JustArt
JustArt
тем: 95 / ответов: 675 / благодарностей: 3 / репутация: 35
Url: crash.kbyte.ru
Skype: ghostman12.12.2012
ответов: 675
создал(а) тем: 95


В MEB 4 не .net
--
Du Main Du BA DU
 
Ответ # 6 # · +  +  дата добавления: 05.06.2013 / 20:51
Автор ответа:
Алексей Немиро
Алексей Немиро
тем: 534 / ответов: 5130 / благодарностей: 325 / репутация: 211
Чашка Kbyte.Ru>>
Url: aleksey.nemiro.ru
Icq: 261779681
Skype: alekseynemiro
ответов: 5130
создал(а) тем: 534


В MEB 4 не .net
Вот и я том же ;-)

C# (произносится си шарп) — объектно-ориентированный язык программирования. Разработан в 1998—2001 годах группой инженеров под руководством Андерса Хейлсберга в компании Microsoft как язык разработки приложений для платформы Microsoft .NET Framework и впоследствии был стандартизирован как ECMA-334 и ISO/IEC 23270.


Visual Basic .NET (VB.NET) — это объектно-ориентированный язык программирования, который можно рассматривать как очередной виток эволюции Visual Basic (VB), реализованный на платформе Microsoft .NET.


Windows Presentation Foundation (WPF) — система для построения клиентских приложений Windows с визуально привлекательными возможностями взаимодействия с пользователем, графическая (презентационная) подсистема в составе .NET Framework (начиная с версии 3.0), использующая язык XAML.

WPF предустановлена в Windows Vista (.NET Framework 3.0), Windows 7 (.NET Framework 3.5 SP1), Windows 8 (.NET Framework 4.0 и 4.5). С помощью WPF можно создавать широкий спектр как автономных, так и запускаемых в браузере приложений.
Для работы с WPF требуется любой .NET-совместимый язык. В этот список входит множество языков: C#, VB, C++, Ruby, Python, Delphi (Prism), Lua и многие другие. Для полноценной работы может быть использована как Visual Studio, так и Expression Blend. Первая ориентирована на программирование, а вторая — на дизайн и позволяет делать многие вещи, не прибегая к ручному редактированию XAML. Примеры этому — анимация, стилизация, состояния, создание элементов управления и так далее.
Microsoft Expression Blend — программа от корпорации Microsoft, предназначенная для разработки дизайна веб-интерфейсов и графических настольных приложений, совмещает в себе особенности этих двух типов приложений. Интерактивный WYSIWYG-редактор для дизайна интерфейсов, основанных на XAML-приложениях, для Windows Presentation Foundation и приложения Silverlight. Входит в состав пакета графических программ Microsoft Expression Studio. Expression Blend поддерживает WPF, в котором используется метод OpenType и ClearType, основанный на 2D- и 3D-элементах управления с аппаратным ускорением через DirectX.

Проще говоря, все это .NET Framework. А XAML это отдельная тема, и принципе ни C#, ни Visual Basic .NET можно не использовать. Т.е. сейчас ты не доучил Visual Basic .NET, а для того чтобы работать c языком XAML, причем преимущественно визуально, зачем-то занялся изучением C#, "потому что он лучше" :)
 
Ответ # 7 # · +  +  дата добавления: 05.06.2013 / 21:01
Автор ответа:
Shark1
Shark1
тем: 3 / ответов: 153 / благодарностей: 5 / репутация: 82
Чашка Kbyte.Ru>>
ответов: 153
создал(а) тем: 3





 
Ответ # 8 # · +  +  дата добавления: 05.06.2013 / 21:23
Автор ответа:
JustArt
JustArt
тем: 95 / ответов: 675 / благодарностей: 3 / репутация: 35
Url: crash.kbyte.ru
Skype: ghostman12.12.2012
ответов: 675
создал(а) тем: 95


Мастер фотошопа:DD
--
Du Main Du BA DU
 
Ответ # 9 # · +  +  дата добавления: 05.06.2013 / 21:26
Автор ответа:
JustArt
JustArt
тем: 95 / ответов: 675 / благодарностей: 3 / репутация: 35
Url: crash.kbyte.ru
Skype: ghostman12.12.2012
ответов: 675
создал(а) тем: 95


Алексей вы правы буду дальше VB.net учить пока "Черный пояс" не получу
--
Du Main Du BA DU
 
Ответ # 10 # · +  +  дата добавления: 12.06.2013 / 12:49
Автор ответа:
Алексей Немиро
Алексей Немиро
тем: 534 / ответов: 5130 / благодарностей: 325 / репутация: 211
Чашка Kbyte.Ru>>
Url: aleksey.nemiro.ru
Icq: 261779681
Skype: alekseynemiro
ответов: 5130
создал(а) тем: 534


Судя по твоим последующим сообщениям, ты не понял абсолютно ничего, о чем тут говорилось :)
Возможно шутка юмора Shark1 тебя окончательно сбила столку

Вот упрощенная карта «мира»:
 
Ответ # 11 # · +  +  дата добавления: 12.06.2013 / 13:10
Автор ответа:
Алексей Немиро
Алексей Немиро
тем: 534 / ответов: 5130 / благодарностей: 325 / репутация: 211
Чашка Kbyte.Ru>>
Url: aleksey.nemiro.ru
Icq: 261779681
Skype: alekseynemiro
ответов: 5130
создал(а) тем: 534


Если на словах, то на Visual Basic .NET ты можешь создавать любые типы проектов, которые поддерживает среда разработки.

Полноценная Visual Studio (Standard, Professional, Ultimate) позволяет создавать любые типы проектов.

Express-версии позволяют делать только определенные типы проектов на определенных языках, а также имеют некоторые ограничения.

Expression (не путать с Express) Studio - это набор программ преимущественно для дизайна. На картинке я нарисовал только Blend. Полный список можно посмотреть, например, тут.

Языки программирования - это то, из чего состоят программа. Языки описывают функционал программы. Все языки равносильны. Не смотри, что я некоторые нарисовал сверху, а некоторые снизу, это не имеет значения, все они находятся на одном уровне. Под .NET Framework можно программировать не только на родных языках, но и любых других, но лучше, кончено, использовать родные языки (VB .NET, C#, и прочие #-языки).

Если посмотреть, где находишься ты, то получится следующая картина:
Visual Studio -> Visual Basic .NET -> Windows Forms

И судя по всему, под Visual Basic .NET ты понимаешь Windows Forms, что неверно.

Если посмотреть, куда ты полез этой темой, то получится следующая картина:
Visual Studio -> C# -> Консольные приложения
Подозреваю, что дело в книге, которую ты начал изучать :) Обычно все книжки по C# начинаются с консольных приложений.

Ты вполне мог бы сделать так:
Visual Studio -> Visual Basic .NET -> Консольные приложения

или так:
Visual Studio -> C# -> Windows Forms

Хотя, как я понимаю, ты хотел получить в итоге вот это:
Expression Blend -> C# -> WPF
Видимо опять дело в книжке :)

Но ничто не мешает сделать так:
Expression Blend -> Visual Basic .NET -> WPF

или так:
Visual Studio -> Visual Basic .NET -> WPF

Последний вариант разумней всего, т.к. ты уже знаком с первыми двумя элементами списка, т.е. работал с инструментом Visual Studio и языком программирования Visual Basic .NET.
 
Ответ # 12 # · +  +  дата добавления: 12.06.2013 / 13:31
Автор ответа:
Алексей Немиро
Алексей Немиро
тем: 534 / ответов: 5130 / благодарностей: 325 / репутация: 211
Чашка Kbyte.Ru>>
Url: aleksey.nemiro.ru
Icq: 261779681
Skype: alekseynemiro
ответов: 5130
создал(а) тем: 534


Еще дополню.

Консольные приложения - это приложения без интерфейса.
Windows Forms - это приложения с интерфейсом (окнами, кнопками и прочими визуальными штуками).
Windows Presentation Foundation (WPF) - это приложения с интерфейсом, но дополнены языком XAML, которые позволяет более широко описывать интерфейс приложения.

Что это все значит? Значит, что делая Консольные приложения, ты не обязан знать, что такое окна и кнопки, текстовые поля, всякие checkbox и т.п. Другими словами, это просто, только код и ничего другого.

Программируя под Windows Forms, ты уже должен знать, что такое окна, кнопки и прочие элементы управления, как с ними работать, специфику их использования и т.п.

Делая проекты в Windows Presentation Foundation (WPF), ты уже должен будешь знать еще и XAML.

Но при всем этом, язык программирования может быть только один - Visual Basic .NET, или C#. Т.е. какой бы тип проекта ты не делал, он будет базироваться на одном языке программирования, которым ты и будешь описывать функционал программы. В далеком прошлом, я в основном программировал на ASP .NET, используя язык программирования Visual Basic .NET, т.е. я осваивал Visual Basic .NET в проектах ASP .NET. Ты вполне можешь прокачивать знания Visual Basic .NET до черного пояса в тех типах проектов, которые тебе наиболее интересны, такие как WPF.

Crash666 писал:
http://kbyte.ru/ru/Forums/Single.aspx?id=14648:
нужно использовать только 2 языка VB и C#
http://kbyte.ru/ru/Forums/Single.aspx?id=14693:
я ведь уже сказал, там используются два языка программисрования
1) C#
2) VB
На платформе .NET Framework, о которой тут идет речь и на которой все работает, VB - это сокращенно Visual Basic .NET.
 
Страница: 1 + Создать новую тему