목록기본개념/C# (9)
VioletaBabel
---코드 리뷰 입문--- 1. 코드 리뷰 - 개발자가 작성한 코드를 다른 개발자가 검토하는 것 장점 : 잠재된 버그 조기 발견, 코드 품질 개선, 문제가 터졌을 때 작성자가 부재해도 리뷰한 개발자가 있으면 빠른 대처 가능. 개발자가 의견을 교류하며 학습할 수 있는 기회. 단점 : 감정 소모. 한 가지 작업(버그 잡기, 기능 추가 등)이 끝나면 해당 부분에 대해 코드 리뷰. 도구는 버전 관리 시스템(git, svn 등)을 이용해 작업단위를 구분하고 코드 리뷰를 도와주는 도구들을 이용. 2. 좋은 코드란? 사람마다 기준이 다르다. 하지만 강연자 분의 기준은 이해하기 좋은 코드. - 내가 작업한 코드도 몇 주 지나고 보면 뭘 작업한건지 몰라 다시 해독하는 시간이 필요하다. - 남이 작업한 코드는 해독하는 시..
델리게이트메소드에 대한 참조로, 콜백 구현. 델리게이트에 메소드의 주소를 할당 후 호출하면 델리게이트가 메소드를 호출해 줌.123456789101112131415161718 delegate int MyDelegate(int a, int b); class Calc { public int Plus(int a, int b) { return a + b; } public static int Minus(int a, int b) { return a - b; } } class Program { static void Main(string[] args) { Calc c = new Calc(); MyDelegate cb; cb = new MyDelegate(c.Plus); Console.WriteLine(cb(3, 4));..
예외 처리섬세한 처리를 요구하는게 아니라 예외를 싸그리 다룰 경우엔 IndexOutOfRangeException이 아닌 그냥 Exception을 쓴다.12345678910 int[] ar = { 0, 1, 2 }; try {//실행할 코드 for (int i = 0; i
배열1234567891011121314 class Program { static void Main(string[] args) { int[] a = new int[5]; for(int i = 0; i = 60) ? true : false; } static void Main(string[] args) { int[] score = new int[5] { 89, 59, 68, 90, 84 }; foreach (int i in score)//89 59 68 90 84 Console.WriteLine(i); Console.WriteLine("---"); //int형 배열 정렬. int의 경우 는 없어도 됨. Array.Sort(score); foreach (int i in score)//59 68 84 89 90 ..
인터페이스 클래스와 비슷해보이나 메소드, 이벤트, 인덱서, 프로퍼티 만을 가질 수 있다.모든 것이 public이며, 인스턴스를 만들 수 없다.단, 클래스가 인터페이스를 상속받게 할 수 있으며 이런 경우엔 인터페이스에 선언된 모든 메소드 및 프로퍼티를 클래스에 구현해줘야한다.12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.IO..
스레드123456789101112131415161718192021222324252627282930using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Threading; // 스레드 사용 namespace ConsoleApp1{ class Program { static void Fa() { for (int i = 0; i -1; --i) Console.WriteLine("b{0}", i); } static void Main(string[] args) { Thread t1 = new Thread(Fa); Thread t2 = new Thre..
형변환1234567int i;double r = 20;string t; i = Convert.ToInt32(10.1); // i = (int)10.1;t = Convert.ToString(r); // t = r.ToString();i = Convert.ToInt32(t); // i = int.Parse(t);cs --출력문12Console.Write("Hello, ");Console.WriteLine("World!");cs 커서 이동1Console.SetCursorPosition(10, 10); // 커서를 10,10 위치로 이동.cs --입력문 123int i = Console.Read(); // Console.Read()는 한 글자만을 입력받아 int형으로 저장char s = (char)i; // 그..
#길벗 #IT #리뷰C# 코딩의 기술 : 똑똑하게 코딩하는 법 - 기본편 한 가지 주의해야 할 점이 있다면 이 책은 이제 막 입문하는 사람을 위한 기본 개념서는 아닙니다. 만약 나는 아직 C#을 전혀 알지 못한다 하는 경우에는 이 책을 보시는 것을 추천하지 않습니다.제가 이 책을 접했을 때만 보더라도 저는 C#을 이제 막 제대로 공부하기 시작하려던 터라 책에서 무슨 말을 하는지 이해할 수 없었습니다. 다만 개념을 한 번 정독한 후 이 책을 다시 보신다면 어떤 방식으로 코딩을 해야 좋은 코드를 짤 수 있을지를 이해하기에 상당히 유용할 것이라 생각됩니다. 아마 저처럼 이제 막 개념을 한 번 정주행하신 분이 계시다면 'C# 코딩의 기술'은 무척 유용할 것이라 장담할 수 있습니다. 책은 '언어 사양 문제', '..
http://www.csharpstudy.com/ 확장자 .cs헤더파일 없음 namespace 네임스페이스명{Class 클래스명{static void Main(string[] args){System.Console.WriteLine("Hello World"); // Line을 지우면 줄바꿈x}}} =========================자료형은 long long 대신 long.object는 모든 타입 포함.int 등 일부 타입들은 null값을 가질 수 없는데int? 라는 식의 ?를 붙인 자료형으로 null을 줄 수 있음.int?를 int? j = 10;int로 바꾸려면 int k = j.Value;하면 됨 ===========================배열 선언 string[] a = new str..