잊지 않겠습니다.

제목이 너무나도 거창한 제목이 되어버렸지만... 이런 제목 이외에는 적을 내용이 없어서 이런 제목으로 밖에 못적겠다. --;

  

d0037487_489d8a444c8b5.png 

 여기에서 3.5에서 구현된 LINQ, ADO.NET Entity Framework는 결국은 Data의 object화 라는 말로 표현할 수 있다.

MS가 이제는 시스템기반이 아닌 데이터를 어떻게 다루고, 그 데이터를 어떻게 하느냐에 대한 관심으로 넘어가고 있는 단적인 내용이 아닐까 하는 생각을 하게 만든다.

  

먼저, LINQ를 사용해보면서, MS에서 이야기하는 Data의 object화는 ruby on rails에서 나온 개념과 너무나도 유사한 것이 재미있다는 생각도 들고, ruby를 잠시 공부해보면서 이렇게 멋진 내용이 있다는 것에 대해서 감탄을 하고 있었는데. 결국은 MS에서 그대로 따라가는 것이 좋은것은 다들 좋다고 생각하는 것 같다.

  

그리고, 차기 버젼에서 나올 기술들은 둘다 "P"를 가지고 있는데... 

이는 둘다 Parallel의 약자이다.  

  

Task Parallel Library, Parallel Language Integrated Query 둘다 multi-processor 기반의 Library로, 기존 single-processor에서는 큰 성능향상이 나타나지 않음을 MS에서도 제시하고 있다. (“Parallel Performance: Optimize Managed Code For Multi-Core Machines: http://msdn2.microsoft.com/en-us/magazine/cc163340.aspx”)

  

그렇다하더라도.. 무언가 새로운 것은 계속 만들어져가고 있고, 그 새로운 것들을 이용한 막강한 기능은 계속해서 손에 쥐어지고 있다. 보다 더 나은 S/W를 만들기 위한 방법은 계속해서 제시되어가고 있는데... 왜 사람은 계속해서 오래된 생각만을 계속하게 되는 것일까.

  

과연 1+1이 2가 되는 것이 사람일까?  

Posted by Y2K
,

I can't write Hangule on linux system(openSUSE 10.3).

 

with mono 1.9.1(beta)

1) use C# 3.0 feature

2) can use LINQ.

3) can use System.Core like C# 3.5

4) can use visual IDE enviroment.

 

-> It's Excellant! T_T

 

Screenshot.png

: it's mono development.

it can check syntec like visual studio but can't check linq syntex. but it's very fast.

 

download mono-project vm.(VMWare Image)

http://www.go-mono.com/mono-downloads/download.html

Posted by Y2K
,

대부분의 경우에서 이름을 결정하는데는 파스칼 케이싱(Pascal casing)을 이용하여 변수의 대 소문자를 결정하길 권유한다. 파스칼 케이싱은 이름의 첫번째 문자가 항상 대문자이어야하는 법칙이다. 예를 들면 EmployeeSalary, ConfirmationDialog, PlaainTextEncoding 와 같다. 대 소문자를 결정하기 위해 사용하는 다른 규칙은 카멜 케이싱(camel casing)이다. 카멜케이싱은 단어의 첫번째 문자에 대문자를 사용하지 않는 것이다. 예를 들면 employeeSalary, confirmationDialog, plainTextEncoding와 같다. 카멜 케이싱은 다음 두가지 경우에 사용하자.

메소드에 전달되는 모든 매개변수의 이름은 카멜 케이싱이다.

public void RecordSale(string salesmanName, int quantity);

동일한 이름을 가지는 두 개의 항목을 구별하기 위해서도 카멜 케이싱을 사용한다. - 즉 프로퍼티와 필드를 구별할 때 사용한다.

private string employeeName;

public string EmployeeName

{

get  {    return employeeName;   }

}

 private 멤버에 대해서는 카멜 케이싱을 사용하고 다른 public 멤버나 protected 멤버에 대해서는 파스칼 케이싱을 사용한다.

   

  

이름 스타일

변수 이름을 지을때는 일관적인 스타일을 사용해야 한다. 예를 들어 클래스의 메소드 중 하나가 ShowConfirmationDialog()라는 이름을 가졌다면 다른 메소드의 이름은 ShowDialogWaring()이나 WarningDialogShow()가 되어서는 안된다. 다른 메소드의 이름은 ShowWarningDialog()가 되어야한다.

  

네임스페이스 이름

네임 스페이스 이름은 .NET이 공유 어셈블리 내의 객체이름을 구별하는 단 한가지 방법이다. <회사이름>.<기술이름>으로 시작하는 네임스페이스 이름을 권한다.

  

이름과 키워드

C#과 C++은 소문자 키워드를 사용한다. 그러나 VB.NET은 키워드가 많고 대소문자를 구별하지 않기 때문에 주의가 필요하다. VB.NET에서 호출할 코드를 사용한다면 VB.NET키워드를 사용하지 않도록 주의한다. (264개의 키워드 있슴)

  

프로퍼티와 메소드 사용하기

변수처럼 사용되는 것은 프로퍼티로 사용하자.

프로퍼티 값을 읽어들이는 데 많은 시간이 걸리면 안된다.

프로퍼티를 순서에 상관없이 설정할 수 있어야한다.

프로퍼티를 계속해서 읽어들여도 일정한 값이 나와야한다.

  

필드 사용하기

필드는 항상 private가 되어야한다. 상수나 읽기전용 필드는 public 이어도 좋다.


Pascal case

The first letter in the identifier and the first letter of each subsequent concatenated word are capitalized. You can use Pascal case for identifiers of three or more characters. For example:

BackColor

Camel case

The first letter of an identifier is lowercase and the first letter of each subsequent concatenated word is capitalized. For example:

backColor

Uppercase

All letters in the identifier are capitalized. Use this convention only for identifiers that consist of two or fewer letters. For example:

System.IOSystem.Web.UI
IdentifierCaseExample
Class Pascal AppDomain
Enum type Pascal ErrorLevel
Enum values Pascal FatalError
Event Pascal ValueChange
Exception class Pascal WebException
Note   Always ends with the suffix Exception.
Read-only Static field Pascal RedValue
Interface Pascal IDisposable
Note   Always begins with the prefix I.
Method Pascal ToString
Namespace Pascal System.Drawing
Parameter Camel typeName
Property Pascal BackColor
Protected instance field Camel redValue
Note   Rarely used. A property is preferable to using a protected instance field.
Public instance field Pascal RedValue
Note   Rarely used. A property is preferable to using a public instance field.

Class 명명법 : Pascal Case, 반드시 명사 사용

  • Property
    • Pascal Case
    • 명사 이용
  • Event
    • Pascal Case
    • public delegate void MouseEventHandler(object sender, MouseEventArgs e)
    • Event의 처리 대리자의 경우, Handler를 붙여서 나타낸다.
    • Event의 경우, 동사를 이용 발생하는 것을 표현
  •  Method
    • Pascal Case
    • 동사 이용
  •  Parameter
    • camel Case
    • 이름 자체에서 설명이 가능한 형태, 명사로 이용
  •  Field
    • Public으로 나타내는 경우에는 모두 Property를 이용한다.
    • camel Case
    • 예전의 '_'는 절대로 사용하지 않는다. <<-- 왜 바뀐거야??
Posted by Y2K
,