2P by neo 13일전 | favorite | 댓글 1개
  • Avalonia Visual Basic 6

  • C#와 Avalonia를 사용하여 고전적인 Visual Basic 6 IDE와 언어를 재현한 프로젝트임

  • 상업적 의도가 없는 재미있는 프로젝트이며, Visual Basic의 이름, 아이콘, 그래픽에 대한 모든 권리는 Microsoft Corporation에 속함

  • 기능

    • 시각적 디자이너
    • VB6 호환 형식으로 프로젝트 저장 및 로드
    • 프로젝트 실행
    • VB6 언어 지원 (제한적)
  • 데스크톱 버전 빌드

    • 일반적으로 .NET 9.0이 필요하며, Directory.Build.props를 수정하여 .NET 8.0을 사용할 수 있음 (브라우저 버전은 9.0 필요)
    • 빌드 명령어: dotnet build AvaloniaVisualBasic/AvaloniaVisualBasic.Desktop.csproj
    • Antlr4 오류가 발생하면 Antlr4BuildTasks 라이브러리가 Java를 자동으로 다운로드하지 못한 것일 수 있으며, Java를 수동으로 설치하면 문제 해결 가능
  • 데스크톱 버전 게시 및 Make Publish 작동

    • IDE 프로젝트(AvaloniaVisualBasic.Desktop)와 런타임(AvaloniaVisualBasic.Standalone) 모두 게시
    • 게시 명령어:
      • dotnet publish AvaloniaVisualBasic.Desktop -f net9.0 -o bin/
      • dotnet publish AvaloniaVisualBasic.Standalone -f net9.0 -o bin/standalone/
    • 이제 ./bin/AvaloniaVisualBasic.Desktop 실행 가능
  • 감사의 말

    • Avalonia
    • Wiesław Šoltés의 Dock
    • lou의 폰트
Hacker News 의견
  • 어린 시절 "Write Your Own Adventure Programs" 책을 통해 프로그래밍을 배운 경험을 공유함

    • BASIC 언어로 작성된 코드를 접했으며, 컴퓨터가 없던 시절의 추억을 회상함
    • Visual Basic을 접하고 메뉴와 버튼을 탐색하며 학습했음
    • 복사 붙여넣기와 수정으로 간단한 프로그램을 작성했으며, 친구 컴퓨터에 장난 프로그램을 설치하는 재미를 느꼈음
    • 프로그래밍을 배우는 과정이 즐거웠으며, 부모님이 자유롭게 컴퓨터를 사용하게 해주어 감사함
  • 웹 버전의 Visual Basic을 사용해보며 부족한 점을 지적함

    • 버튼 레이블의 앰퍼샌드(&)가 가속기를 생성하지 않음
    • 레이블 컨트롤의 내용을 변경하기 위해 입력 필드에 포커스를 맞춰야 함
    • 디버깅, 저장, 도움말 등의 메뉴가 구현되지 않음
    • 브라우저에서 실행 가능한 실행 파일을 생성하는 빌드 버튼이 필요함
  • WebAssembly가 모든 언어를 웹으로 가져오는 점을 좋아함

    • C# 애플리케이션을 WebAssembly로 컴파일하여 웹에서 Visual Basic을 작성하는 것이 대단함
  • 현대 GUI 툴킷으로의 발전 과정을 이해하지 못하겠음

    • 직관적이고 사용하기 쉬웠던 과거의 UI를 회상함
  • Avalonia라는 도구를 처음 접했으며, 그 가능성에 대해 궁금해함

    • 단일 .NET 코드베이스로 크로스 플랫폼 애플리케이션을 만들 수 있는 점이 인상적임
  • 코드 분석을 통해 데모를 위한 최소한의 기능만 구현되었음을 발견함

    • MsgBox와 InputBox 두 가지 기능만 지원됨
    • 4일 만에 복잡한 것을 만든 점이 인상적이며, 완전한 IDE 개발의 좋은 시작임
    • 구문 강조 및 자동 완성 기능이 없으며, 디버거도 기대하지 않음
  • Turbo Pascal과 Delphi 7을 사용하며 개발을 시작한 어린 시절을 공유함

    • Delphi는 VB6와 유사했으며, 첫 번째 앱은 Notepad++ 클론이었음
  • 1995-2001년 Windows UI가 최고였다고 회상함

    • Visual C++와 Visual Basic이 완벽하지 않았지만 작업을 완료할 수 있었음
  • Visual Basic의 초기 개발자 중 한 명으로서 경험을 공유함

    • 당시 Ruby라는 이름으로 Windows 3.0의 사용자 정의 셸로 계획되었음
    • Microsoft가 이를 개발자 도구로 전환하여 Visual Basic을 탄생시킴
  • AvaloniaVisualBasic6의 웹 버전을 브라우저에서 열어볼 수 있음