2011-12-16 3 views
3

Я пытаюсь изучить C# из некоторых видеороликов YouTube, но у меня есть несколько проблем. Я начал с JavaScript, хотел изучить язык программного обеспечения, поэтому я изучил некоторые C++, но потом я узнал, что C# лучше для программирования графического интерфейса, так что теперь я собираюсь с этим.C# и Visual Studio?

Проблема в том, что я чувствую, что VS делает много вещей, которые я должен знать, как это сделать, но не ... Когда я добавляю кнопку или создаю новый класс или что-то, что все делается с VS. Однако я хочу знать, что он делает, поэтому я могу сделать это сам, если понадобится.

Я нахожусь на видео, объясняющем классы, и мне было интересно, где находится файл заголовка. Я не мог найти его, поэтому я искал в Интернете и, узнав, в отличие от C++, у C# нет файлов заголовков. Связаны ли файлы классов?

Практично ли научиться делать все вручную или C#, выполненное исключительно в VS? Есть ли способ отслеживать, какие файлы и фрагменты кода добавляются и создаются при нажатии кнопки в VS?

+2

Полезно понять, что происходит под капотом, но это не обязательно. Как IDE, он автоматизирует эти задачи для вас, поскольку они в противном случае будут действительно утомительными или обыденными, поэтому вы можете сосредоточиться на написании фактической логики приложения, а также на предотвращении множества ошибок. – BoltClock

+1

Код для GUI обычно добавляется в 'YourFormName.designer.cs', где YourFormName - это имя вашей формы. Вы также можете щелкнуть правой кнопкой мыши по любому методу и нажать «GoToDefinition», чтобы перейти к реализации. – Vamsi

+0

Я думаю, вам стоит попробовать прочитать любую книгу, а не смотреть на видео. Если вы действительно хотите использовать C# позже .. Что-то вроде http://www.apress.com/microsoft/c/9781430225379 – chopikadze

ответ

0

Я предвзятость, но лучший способ понять и узнать, что происходит в программе, - это отладить ее.

Создание нового приложения C# в Visual Studio даст вам самый быстрый путь к этому. Вам не нужно слишком беспокоиться о том, что Visual Studio создает для вас, потому что, если вы хотите это понять, просто выполните код в отладчике. Вы точно видите, какие вызовы выполняются, как каждый из них меняет состояние и т. Д.

Если вы создаете основное приложение графического интерфейса, то выполните функцию InitializeComponents, что дает вам действительно хорошее представление о том, как VS устанавливает вещи для вас.

C# можно использовать вне VS, но имея все компоненты, чтобы вы могли просто нажать F10 и начать отступать в среде IDE, это лучший выбор.

0

Ну, лучший способ - не использовать VS Designer, если вы хотите узнать, что происходит за шторами. Конечно, вы можете кодировать каждую строку вручную, и она все равно будет работать. Например. чтобы добавить кнопку:

Form form = new Form(); // create my form 
Button button = new Button(); // create the button 
button.Text = "Click me!"; // add some text 
form.Controls.Add(button); // add the button to the form 
Application.Run(form); // start the applications main thread and display the button 

На улице есть десятки учебных пособий, просто найдите ту, которая вам подходит.

0

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

Так что если вы создадите сотрудника вызова класса, он создаст для вас базовый синтаксис, и вам нужно будет написать логику напрямую.

Спасибо, Jigar

0

C# как язык используется для разработки нескольких видов приложений, таких как консольных приложений, настольных приложений для Windows и веб-приложений.

Для первого вы будете кодировать все в основном вручную, даже если вы используете Visual Studio.

Для последних двух, поскольку они основаны на графическом интерфейсе, рекомендуется использовать Visual Studio, чтобы вы могли использовать подход «перетаскивание», а также иметь Visual Studio для выполнения обычных задач, чтобы вы могли сосредоточиться о логике и фактическом развитии.

0

ИМО, вы не должны пытаться учиться каждый, но в любом случае - основные понятия расширят ваше понимание и, несомненно, помогут вам в дальнейшей жизни.

Если вы хотите, что именно VS делает с вашим кодом - поставьте некоторый «охранник VCS» в верхней части проекта. Используйте Git или Mercurial, и вы можете увидеть точные изменения, которые были применены к каждому файлу (передать все, прежде чем выполнять интересные действия и проверить изменения после). Это может помочь вам отслеживать все, что будет происходить с вашим проектом. Но для большинства случаев это не очень эффективно делать все руками. DevTools были сделаны, чтобы удалить очень скучную рутину.

Очень полезно знать, как вы можете что-то сделать без установки VS, но все такие задачи, как правило, напрямую не связаны с программированием, в основном это своего рода вспомогательный материал. Пример. как построить проект с помощью msbuild или csc.exe (компилятор C#) для настройки системы непрерывной интеграции homebrew.

Если вы хотите по-настоящему глубоко понять .NET - прочитайте CLR через C# Джеффри Рихтера. ИМО гораздо важнее знать системные кишки, чем знать, как разместить кнопку на форме без VS-дизайнера.