다운로드 주소http://developer.android.com/index.html 순서1. Develop 클릭 2. Tools 클릭 3. Download 클릭 4. Download the SDK 클릭 5. 약관 동의, 자신의 컴퓨터가 32bit인지 64bit인지 선택후 다운로드 하면 파일을 받게 된다. 서버가 상당히 느리다...우리나라처럼 휘리릭 받아지지 않는다 다운걸어놓고 느긋하게 다른일을 하고 있으면 받아져 있을것이다... 이클립스에 적용하는건 다음으로....(하루 하나 포스트 원칙으로 인해....쓸 분량이 없어지면 난감하니까....ㄷㄷ)
Eclipse를 사용하면서 시스템 과부하나 메모리 부족 현상을 종종 느끼는데 이유인즉슨 JVM이 메모리 영역을 사용하기 때문이다 JVM 은 메모리 관리를 Heap과 PermGen 영역으로 나누어 관리한다. 일반적인 실행 영역은 Heap 영역이라고 하고, PermGen 영역은 클래스 메타 데이터를 관리해 주는 영역이다. 그렇게 때문에 JVM의 Heap영역과 PermGen 영역을 늘려주면 보다 전보다 원할한 작업을 진행 할 수 있다. 1. Eclipse가 설치된 폴더로 가서 Eclipse.ini 파일을 찾아 메모장같은곳에서 연다 -startupplugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar--launcher.libraryplugins/org.ec..
펌주소 : http://blog.wishket.com/514/원본 출처 : http://goo.gl/ALAUU 원본 작성자 박영록씨의 동의 후 게재된 글입니다.개발자가 모자라요 개발자라는 직업 특성상(?) 다양한 회사들을 만나고 다니다보니 꽤나 자주 들려오는 이야기가 있다. 개발자가 모자라요. 근데 이것도 크게 보면 두 가지 종류가 있다. 스타트업이 개발자를 제대로 구하지 못해서, 혹은 구한 개발자를 붙들어두지 못해서 개발자 공백 상태가 되는 경우. 그리고 또 하나는 개발팀을 그런대로 확보해놓았지만 그 개발팀의 생산성이 만족스럽지 않은 경우. 두 경우의 공통점도 있는데, 그건 개발자가 모자라는 것이 현상이지 원인이 아니라는 것이다. 그래서 https://twitter.com/pakyoungrok/stat..
private void tbbInsert_Click(object sender, RoutedEventArgs e) { for (int i = 0; i < dt_PersonList.Rows.Count; i++) { string strTempSite = dt_PersonList.Rows[i]["CD_SITE"].ToString(); for (int j = 0; j < GrdData_d.Rows.Count; j++) { if (GrdData_d[j, (int)GridCol_d.CD_SITE].ToString() == strTempSite) { goto Escape; } } //그리드의 row를 만들기 위에 각 cell을 정의 하고 병합한다. object[] items = new object[2]; items[(..
Click Event -> EnterCell Event 순이다 논리적으로 그리드 안에 들어가기 위해서는 마우스로 클릭을 해야 한다. 그래서 클릭을 하게되면 Click Event가 일어나 먼저 실행이 되고 끝나면 EnterCell Event가 일어나 실행이 된다... 중간에 DoubleClick Event가 발생했다고 치면... Click Event -> DoubleClick Event -> EnterCell Event 가 될것이다( 안해봤지만 충분히 유추 가능하다.) 개발시 그리드 내에 Row 포커스 이동시 해당 Row의 Cell Editing을 가변적으로 막으려고 하는데 속성으로 AllowEditing 먹였는데 잘 되지 않을시 위 이벤트들을 잘 살펴보길....
자동 종료 프로그램...퇴근시간에 윈도우 업뎃이 떠서 종료시키지 못할때...일찍 퇴근하고 싶은데 컴퓨터가 자기 혼자 작업중이라 종료시키지 못할때...일찍 퇴근하고 싶은데 늦게까지 있었다고 구라(?) 칠수 있는 알리바이 만들고 싶을때....등등... 윈도우의 shutdown 명령어 활용하여 만든 자동종료 프로그램임...현재시각에서 1분, 10분, 한시간(무조건 현재시간에서 1분뒤, 10분뒤, 한시간뒤 종료) 또는설정시간에서 1분, 10분, 한시간씩 더해서(설정시간에서 +1분, +10분, +한시간씩 늘일수 있음) 설정할수 있음 종료 및 재부팅, 로그아웃, 절전모드 사용가능 종료 및 재부팅은 종료시간 예약가능종료 시 사용하고 있던 프로그램을 재부팅시 다시 가동시키는 옵션 추가 로그아웃, 절전모드는 즉시 실행됨..
암호화 방법 몇 가지...사용하기전 using System.Security.Cryptography; 추가 // MD5 암호화 128bit 암호화 public static string MD5Hash(string Data) { MD5 md5 = new MD5CryptoServiceProvider(); byte[] hash = md5.ComputeHash(Encoding.ASCII.GetBytes(Data)); StringBuilder stringBuilder = new StringBuilder(); foreach (byte b in hash) { stringBuilder.AppendFormat("{0:x2}", b); } return stringBuilder.ToString(); } // SHA256 256..
오버로드는 기존에 정의 되어 있던걸 새롭게 정의하는거야 간단하게 말하면 + 가 덧셈이자나 그걸 오버로드 시켜서 나는 * 부호로 쓰겠다 하는게 오버로드 오버라이드는 + 라는 기호가 있다 라고 정의만 해놓고 A에서는 덧셈으로 쓸수있게 정의하고 B에서는 *으로 쓸수 있게 C에서는 / 으로 쓸수 있게 하는 방법이야 차이점은 초기에 정의를 하느냐 마느냐 차이 소스 코드로 설명하자면 오버로드는 함수 정의 할때 AAA() --> 1 AAA(string a) ->2 AAA(string a, string b) -> 3 AAA(string a, int b, double c) -> 4 이런식으로 같은 함수명인데 하는 역할은 다르게 하는거고 오버라이드는 AAA(); -> 정의 상속 A class AAA(){ 123; }; B..
public static class ExtMethod { public static string ConvertTen(this string s) { string returnStr = ""; for (int i = 0; i < 10; i++) { returnStr += s; } return returnStr; } } string 변수에서 '.' 찍고 난 다음 나오는 메서드에 추가하고 싶을때 씀 ex) string a = "a"; Console.WriteLine(a.ConvertTen()); 하면 a가 10개 찍혀서 나온다
C#에서 as는 강제형변환을 해주는 연산자이다. 강제형변환이라하면 그냥 (double)a; 라고 하면 되지 굳이 as 연산자를 사용할 필요가 있을성싶다. 보통 형변환이라고 하면 낮은형에서 높은형으로 변환하는 것을 말한다.(ex: int->double) 강제형변환이라고 하는 것은 높은형에서 낮은형으로 변환하거나 에러가 날 수 있는 형변환을 말한다.(ex:double->int , int->string) 일반적인 형식으로 강제형변환을 하게 되면 예외가 발생하게 된다. 하지만, as 연산자를 사용하게 되면, 불가능한 형변환(문제가 제기될 수 있는)시 예외가 발생하는 것이 아니라. Null값이 대입된다. ex) obj ob1 = 1234; string str; str = ob1 as string; // 불가능한 ..