프로그래밍/AHK 메뉴얼

    [팁] 코드 최적화 Code Optimization

    [팁] 코드 최적화 Code Optimization

    개발자는 깔끔하고 일관성있는 코드를 작성하는것이 중요합니다 규모가 큰 프로젝트를 진행중이라면 더욱 중요하죠, 코드의 상태가 프로그램의 유지보수에 많은 영향을 끼치기 때문에요 그래서 제가 코드를 최적화하기 위해 사용했던,하고있는 방법 몇가지를 소개하고자 합니다 많은 분들이 영감을 얻었으면 좋겠어요. 시작하겠습니다 01. 변수 값저장, 함수호출은 콤마로 연속해서 작성 변수에 값을 저장할때, 일반적으로는 아래처럼 코드를 작성합니다 이름 := "예지력" 성별 := "남성" 거주지 := "서울" 변수의 종류가 적은 경우, 위 처럼 작성해도 코드가 크게 길어지진 않지만 변수의 종류가 많은 경우에는 저장할때마다 다음줄로 넘겨주니 코드가 길어지죠 그런데 알고 계셨나요? 변수는 콤마(,)로 넘기면서 저장할 수 있습니다 ..

    [팁] 코드의 속도, 성능을 높이는 한줄 팁 모음

    [팁] 코드의 속도, 성능을 높이는 한줄 팁 모음

    SetFormat 커맨드 사용을 자제하세요, 속도가 느려집니다 기본환경변수를 제거해, 혹시모를 변수간의 충돌을 방지하고 성능을 높이기 위해서 #NoEnv 을 사용하세요 오토핫키는 자동으로 최근 실행된 코드라인을 기억합니다, ListLines, Off 로 중지하세요 오토핫키는 자체적으로 키로그를 남깁니다, #KeyHistory 0 으로 중지하세요 프로세스의 우선순위를 높임으로서 성능향샹을 기대할 수 있습니다, Process, Priority,, High Send 보다는 SendInput 을 사용하세요. 훨씬 빠르고 안정적(실행중엔 유저키입력 차단)이랍니다 오토핫키는 기본적으로 라인마다 Sleep, 10 을 수행합니다, SetBatchLines, -1 으로 Sleep 을 제거해 속도를 높이세요 SetWinD..

    [라이브러리] Easyini - 네이티브 ini

    [라이브러리] Easyini - 네이티브 ini

    오토핫키에서 값을 저장하고 불러오는 목적으로 .ini 파일을 사용할 수 있습니다 근데 단점은 너무 느리다는거죠, IniWrite으로 값을 저장할때 ~10개정도까지는 그렇다해도 양이 늘어나면 많이 느리다는걸 느끼실꺼에요 또한, 문법이 길고 FileName을 계속 지정해줘야 한다는 귀찮은 문제도 있겠네요 이러한 기존 Ini의 문제를 해결하고자 Verdlin 이 새로운 클래스를 만들어냈었습니다, 바로 Easyini 벤치마킹의 결과를 보시면 알겠지만, 기존 IniWrite 보다 1162% 더 빠릅니다 5만개의 값을 저장하는데 Easyini 클래스는 21초, IniWrite 은 4분 4초가 걸립니다 { iAhkPID := DllCall("GetCurrentProcessId") Process, Priority, i..

    [파싱] 오토핫키 파싱과 정규식 정리

    [파싱] 오토핫키 파싱과 정규식 정리

    독자가 기본적으로 오토핫키의 이해하고 사용한다는 가정하에 작성했습니다. 아래는 따로 설명하지 않습니다. ㅡ If 조건식 ㅡ 익스프레션 변수에 대한 이해 ㅡ IfInString, MsgBox 명령어 ㅡ 함수에 대한 이해 파싱이란, 특정 변수에서 문자열을 추출해는것을 의미하는데요. 배포하는 프로그램에서 실시간 공지사항이나, 최신버전의 업데이트알림이 필요할떄가 있습니다. 이런 경우에 웹상의 정보를 파싱하면 되겠죠 파싱을 하기위해서는 먼저, 웹의 데이터를 받아와야하는데 일반적인 방법으로는 UrlDownloadToFile 함수로 웹페이지를 다운받거나, WinHttp로 웹페이지 텍스트를 변수로 저장하는데요 혹은 윈도우 API함수를 사용해 웹페이지를 메모리로 읽어올수도 있습니다. 여기에서는 윈도우 API를 사용하여 ..