http://mycsharp.ru/post/25/2013_06_26_metody_v_si-sharp_raznica_mezhdu_prostymi_i_staticheskimi.html
03.09.15
Разделы программной инженерии:
1.Требование
2.Проектирование
3.Конструирование
4.Тестирование.
5Сопровождение.
6.Конфигурационное управление.
7.
Тестирование предполагает работу с результатами конструированием.
Стандарты с конструированием:
-Коммуникационные методы – стандарты форматов документов, оформление содержащих;
-Языки программирования
-Платформы. Стандарты программных интерфейсов вызова функций операционной среды
-Инструменты
Кодирование:
1.Техники создания легко понимаемого исходного кода на основе использовании соглашений об именовании форматирований и структурировании кода
2. Использование класса перечисляемых типов, переменных именованных констант.
3.Обработка ошибочных условий
4.Предотвращение бреши в безопасности
5.
07.09.15
MSILпромежуточный язык определяет набор переносимых инструкций
Мета данные представляют собой сведенья об объектах использоваемых в программе, а так же сведенья о самой сборке. Мета данный позволяют организовать межъязыковые взаимодействие, обеспечивают безопасность и облегчают развертывание
Using System;
Namespace First
{
Class First
{
State void Main()
{
Console
}
}
}
Using деректива можно создавать
С# |
NetFraemwork |
Количества байт |
Bool |
.System Boolean |
1 |
Byte |
.Byte |
1 |
Sbyte |
.Sbyte |
1 |
Char |
.Char |
2 |
Decimal |
.decimal |
32 |
Double |
.double |
8 |
Float |
.single |
4 |
Int |
.int32 |
4 |
Uint |
.uint32 |
4 |
Long |
.int64 |
8 |
U long |
.uint64 |
8 |
Object |
.object |
|
Short |
.int16 |
2 |
Ushort |
.uint16 |
2 |
string |
.string |
|
Decimalдесятичное число с фиксированной точкой
Упаковка – это процесс явного преобразования структурного типа в ссылочный.
Распаковка – это преобразование ссылки на объект в оперативной памяти обратно в структурный тип.
Int a = int.Parse(Console.ReadLine());
Forichпозволяет перебрать все значения в цикле или коллекции
17.09.15
Массивы – это упорядоченное
Зубчатые массивы
Int[][]mas=newint[10][]
Mas[0] = new int[ ] {1,2,3}
Mas[1] = new int[ ] {1,2}
Mas[2] =newint[ ] {1,2,3,7,8,10}
Свойства и методы класса array
Свойство Rank
Int l = ArrauIndexOf (mas, 8);
l = Array.lastIndexOf(mas,8);
Array.Sort(mas);
Array.Reverse(mas);
Random r=new Random();
inta=r.Next(1,9);
Директива usingиспользуется в следующих трех целях.
Для разрешения использования типов в пространстве имен, чтобы не нужно было квалифицировать использование типа в этом пространстве имен:
C#
usingSystem.Text;
Для разрешения доступа к статическим членам типа без необходимости квалификации доступа с помощью имени типа:
C#
using static System.Math;
Чтобы создать псевдоним для пространства имен или типа. Это называется директивой псевдонима using.
C#
using Project = PC.MyCompany.Project;
static
Модификатор static используется для объявления статического члена, принадлежащего собственно типу, а не конкретному объекту. static можно использовать с классами, полями, методами, свойствами, операторами, событиями и конструкторами, но нельзя — с индексаторами, деструкторами или типами, отличными от классов.
Пример
static и содержит только static методы.
static class CompanyEmployee
{
public static void DoSomething() { /*...*/ }
publicstaticvoidDoSomethingElse() {/*...*/}
}
Объявление константы или типа неявно является статическим членом.
На статический член нельзя ссылаться через экземпляр, а можно только через имя типа. Например, рассмотрим следующий класс.
publicclassMyBaseC
{
publicstructMyStruct
{
publicstaticintx = 100;
}
}
switch— это оператор управления, выбирающий из списка возможных вариантовраздел переключения, для выполнения содержащегося в нём кода.
switch включает один или несколько разделов переключения. меток case, за которыми следует один или несколько операторов.switchс тремя разделами переключения. case 1, и два оператора.
intcaseSwitch = 1;
switch(caseSwitch)
{
case 1:
Console.WriteLine("Case 1");
break;
case 2:
Console.WriteLine("Case 2");
break;
default:
Console.WriteLine("Default case");
break;
}
Неявные преобразования. Не требуется никакого специального синтаксиса, поскольку преобразование безопасно для типов и данные не теряются.
Явные преобразования (приведения). Для явных преобразований необходим оператор приведения.
Пользовательские преобразования. Пользовательские преобразования выполняются специальными методами, которые можно определить для включения явных и неявных преобразований между пользовательскими типами, не имеющих отношения базовый класс — производный класс.Операторы преобразования (Руководство по программированию в C#).
Преобразования с помощью вспомогательных классов. Для преобразования между несовместимыми типами, например целые числа и объектыSystem.DateTime, или шестнадцатеричные строки и байтовые массивы, можно использовать классSystem.BitConverter, классSystem.Convertи методы Parse встроенных числовых типов, таких какInt32.Parse.Практическое руководство. Преобразование массива байтов в значение типа int (Руководство по программированию на C#),Практическое руководство. Преобразование строки в число (руководство по программированию в C#)иПрактическое руководство. Преобразование из шестнадцатеричных строк в числовые типы (Руководство по программированию на C#).
Примеры Convert
double dNumber = 23.15;
try {
// Returns 23
int iNumber = System.Convert.ToInt32(dNumber);
}
catch (System.OverflowException) {
System.Console.WriteLine(
"Overflow in double to int conversion.");
}
// Returns True
bool bNumber = System.Convert.ToBoolean(dNumber);
// Returns "23.15"
string strNumber = System.Convert.ToString(dNumber);
try {
// Returns '2'
char chrNumber = System.Convert.ToChar(strNumber[0]);
}
catch (System.ArgumentNullException) {
System.Console.WriteLine("String is null");
}
catch (System.FormatException) {
System.Console.WriteLine("String length is greater than 1.");
}
// System.Console.ReadLine() returns a string and it
// must be converted.
int newInteger = 0;
try {
System.Console.WriteLine("Enter an integer:");
newInteger = System.Convert.ToInt32(
System.Console.ReadLine());
}
catch (System.ArgumentNullException) {
System.Console.WriteLine("String is null.");
}
catch (System.FormatException) {
System.Console.WriteLine("String does not consist of an " +
"optional sign followed by a series of digits.");
}
catch (System.OverflowException) {
System.Console.WriteLine(
"Overflow in string to int conversion.");
}
System.Console.WriteLine("Your integer as a double is {0}",
System.Convert.ToDouble(newInteger));
namespaceSampleNamespace
{
class SampleClass { }
interface SampleInterface { }
struct SampleStruct { }
enum SampleEnum { a, b }
delegate void SampleDelegate(int i);
namespace SampleNamespace.Nested
{
class SampleClass2 { }
}
}