내 Fedora Linux에서 다음을 수행할 수 있기를 바랍니다.
Linux를 완전한 개발 플랫폼으로 사용하면 다른 운영 체제를 설치할 필요가 없지만 여전히 다른 플랫폼에서 프로그램을 빌드하고 테스트할 수 있습니다.
Office, 그림판, 원격 데스크톱 등과 같은 다른 모든 작업을 위해 Windows 시스템을 완전히 교체합니다.
위의 목표를 달성하는 오픈소스 프로젝트와 도구를 제안해 주실 수 있나요?
답변1
"플랫폼"을 정의하십시오. 크로스 컴파일을 사용하여 Linux에서 소프트웨어를 구축할 수 있더라도 실제로 해당 운영 체제를 실행하지 않고서는 Windows 또는 Mac에서 사용할 소프트웨어를 합리적으로 테스트할 수 없습니다. VMware는 다른 운영 체제에서의 실제 테스트를 위한 훌륭한 도구입니다.
질문의 두 번째 부분은 아마도 완전히 별개의 질문이어야 합니다. 그러나 MS Office, Pinta 또는 GIMP 대신 OpenOffice.org 또는 Google Docs를 사용하거나 원격 데스크톱 등 대신 Paint, VNC 또는 Empathy+Vinagre 대신 다른 것을 사용할 수 있습니다.
좀 더 구체적인 사용 사례를 제공하면 이러한 질문에 답하는 것이 더 쉬울 것입니다.
답변2
시스템 프로그래머, 웹 개발자, 데스크톱 애플리케이션 개발자라면 크로스 플랫폼을 쉽게 개발할 수 있습니다. 시스템에 관심이 있다면 Linux용으로 작성한 모든 유틸리티 및/또는 드라이버는 아마도 최소한의 수정만으로 다른 *nix에서 작동할 것입니다. 표준 C 코드를 작성하고 시스템별 호출을 너무 많이 사용하지 않는다면 Windows로 쉽게 이식할 수도 있습니다.
데스크톱 애플리케이션 개발자라면 GTK, QT 또는 wxWidgets를 대상으로 할 수 있으며 애플리케이션은 현재 세 가지 주요 플랫폼(*nix, Windows, Mac)에서 잘 실행될 가능성이 높습니다. 마찬가지로 시스템별 호출을 최소한으로 유지하거나 시스템별 래퍼 라이브러리로 격리하세요. 또한 애플리케이션이 완전히 실행되도록 하는 가상 머신(예: JVM 및/또는 CLR)을 대상으로 할 수도 있습니다.
웹 개발자라면 아마도 다양한 옵션을 접했을 것입니다. 나는 다음과 같은 작은 웹 서버를 선호합니다.체로키어저는 ASP.NET(Mono)과 그 위에서 실행되고 PgSQL 백엔드를 사용하는 Django 애플리케이션을 개발하고 실행합니다.
따라서 결론은 대상 플랫폼에서 코드를 컴파일하고 코드를 작성하는 동안 이를 염두에 둘 수 있거나 대상이 가상 머신인 경우 Linux에서 크로스 플랫폼 개발을 수행할 수 있다는 것입니다. 또 다른 요점은 당신이 만날 수 있다는 것입니다선택의 역설그리고 무엇을 사용해야할지 모르겠습니다. 이렇게 하려면 아래 두 번째 질문에 대한 답변을 읽어 보십시오.
두 번째 질문과 관련하여 제가 찾은 최고의 리소스는 다음과 같습니다.오픈 소스 대안. 이 웹사이트에는 상용 소프트웨어와 해당 오픈 소스 대안이 나열되어 있습니다. 거의 모든 대안은 Linux 및 FreeBSD에서 작동합니다.
답변3
Weeeeeeeel, #1 정말 멋지네요 선생님. 나는 이것을 달성하는 방법을 모른다. 다른 *nixes로 크로스 컴파일 가능(약간의 두통) 개발 상자에 있지만 적절한 운영 체제와 아키텍처가 없으면 해당 코드를 어떻게 실행해야 합니까? 광범위한 시도가 있어왔다.시스템 시뮬레이션거기에 있지만 궁극적으로 장애물이 됩니다. OS/아키텍처에서 소프트웨어를 테스트하려면 해당 OS/아키텍처에서 실행하세요!
반면에, 다양한 구성으로 동일한 프로젝트를 쉽게 빌드할 수 있는 도구가 있습니다. 번역가아마도 가장 잘 알려져 있고 잘 테스트된 것일 것입니다. 최소한 이는 다른 시스템에서 프로젝트를 테스트하거나 다른 시스템에서 테스트하도록 권장하는 데 도움이 될 것입니다.
솔직히 말해서 다른 운영 체제에서도 이것이 불가능하다고 확신합니다.
#2 더 쉬워진다
등. 제가 더 도움이 되겠지만, 귀하의 문제 심각도가 급격히 떨어졌습니다.
답변4
단일 개발개발 지식을 익히는 데 도움이 됩니다.
MonoDevelop은 주로 C# 및 기타 .NET 언어용으로 설계된 IDE입니다. MonoDevelop을 사용하면 개발자가 데스크톱 및 ASP.NET 웹 애플리케이션을 빠르게 작성할 수 있습니다.리눅스, 윈도우그리고애플 컴퓨터. MonoDevelop을 사용하면 개발자는 Visual Studio로 만든 .NET 애플리케이션을 Linux로 쉽게 이식하고 모든 플랫폼에 대해 단일 코드 기반을 유지할 수 있습니다.
(강조는 내 것)