likes
comments
collection
share

第1章Hello world 4/5:对比Rust/Java/C++创建和运行Hello world全过程:运行第一个程序

作者站长头像
站长
· 阅读数 38

讲动人的故事,写懂人的代码

1.7 对比Rust/Java/C++创建和运行Hello world全过程

有了会听懂人类的讲话,还能做记录的编程助理艾极思,他们三人的讨论内容,都可以变成一份详细的会议纪要啦。

第1章Hello world 4/5:对比Rust/Java/C++创建和运行Hello world全过程:运行第一个程序

接下来,我们一起看看艾极思是如何记录下赵可菲创建和运行Java程序Hello world,以及席双嘉创建和运行C++程序Hello world的过程,然后与Rust的过程进行对比哦!如表1.1所示。

表1.1 三种语言创建运行Hello world过程对比

过程RustJavaC++ on macOSC++ on Ubuntu or WSL2 Ubuntu on Windows 11C++ on Windows 11
环境准备用rustup安装不同版本的Rust用SDKMAN!安装不同版本的Java用Xcode安装Clang这个单一版本的C++用apt安装GCC这个单一版本的C++用Visual Studio 2022安装单一版本的C++
如何验证编译器安装成功rustc --versionjavac -versionclang++ --versiong++ --version在Developer PowerShell for VS 2022里运行:cl -v
创建Hello world项目代码使用cargo new:cargo new hello_world_rust使用gradle init:创建一个文件夹;进入这个文件夹;运行命令:gradle init --type hello_world_java使用cmake-init:须先上网搜github friendlyanon cmake-init,然后安装cmake-init;再运行命令:cmake-init hello_world_cpp(同左)(同左)
格式化代码cargo fmtgoogle-java-format -replace ./app/src/main/java/org/example/App.java须先用Homebrew安装clang-format,再运行命令:clang-format -i ./source/main.cpp须先用apt安装clang-format,再运行命令:clang-format -i ./source/main.cpp须先用 Visual Studio Installer 安装 Clang 工具,再运行命令:clang-format -i ./source/main.cpp
检查语法错误cargo check./gradlew compileJava会在app/build文件夹中编译源文件clang++ -fsyntax-only ./source/main.cppg++ -fsyntax-only ./source/main.cpp须先用 Visual Studio Installer 安装 Clang 工具,再运行命令:clang++ -fsyntax-only ./source/main.cpp
编译cargo build会在target/debug文件夹中编译和构建(同上)运行以下4行命令进行编译和调试构建:第一行mkdir build第二行cd build 第三行cmake -DCMAKE_BUILD_TYPE=Debug .. 第四行cmake --build .(同左)运行以下4行命令进行编译和调试构建:第一行mkdir buil第二行cd build第三行cmake ..第四行cmake --build . --config Debug
用于开发自测的构建(同上)./gradlew build会在app/build文件夹中构建jar包(同上)(同上)(同上)
开发阶段试运行cargo run./gradlew run直接运行可执行文件直接运行可执行文件直接运行可执行文件
生成文档cargo doc --open./gradlew javadoc使用Homebrew安装doxygen;运行命令doxygen -g Doxyfile生成初始Doxyfile;配置Doxyfile;运行命令doxygen Doxyfile使用apt安装doxygen;运行命令doxygen -g Doxyfile生成初始Doxyfile;配置Doxyfile;运行命令doxygen Doxyfile使用Chocolatey安装doxygen;运行命令doxygen -g Doxyfile生成初始Doxyfile;配置Doxyfile;运行命令doxygen Doxyfile
构建发布包cargo build --release 会在target/release文件夹中构建./gradlew build会在app/build文件夹中构建jar包运行以下4行命令进行编译和发布构建:第一行mkdir -p build_release 第二行cd build-release 第三行cmake -DCMAKE_BUILD_TYPE=Release .. 第四行cmake --build .(同左)运行以下4行命令进行编译和发布构建:第一行mkdir build_release 第二行cd build_release 第三行cmake .. 第四行cmake --build . --config Release
运行发布后的程序直接运行可执行文件java -jar app/build/libs/app.jar直接运行可执行文件直接运行可执行文件直接运行可执行文件
清除所有构建输出文件cargo clean./gradlew clean直接删除build文件夹直接删除build文件夹直接删除build文件夹

这张表格将带你了解在不同编程语言和操作系统上创建并运行Hello world程序的简要步骤。详细命令参见上表。让我们一起开始吧:

  1. 环境准备

    • Rust:可以用rustup安装不同版本的Rust,以便在同一台电脑上开发不同Rust版本的项目。
    • Java:可以用SDKMAN!安装不同版本的Java,以便在同一台电脑上开发不同Java版本的项目。
    • C++ on macOS:用Xcode安装Clang。不支持在同一电脑安装多个C++版本。
    • C++ on Ubuntu或WSL2 Ubuntu on Windows 11:用apt安装GCC。不支持在同一电脑安装多个C++版本。
    • C++ on Windows 11:用Visual Studio 2022安装C++。不支持在同一电脑安装多个C++版本。
  2. 如何验证编译器安装成功

    • Rust:为了确认一切就绪,我们需要运行rustc --version
    • Java:运行javac --version,确认Java已经就位。
    • C++ on macOS:运行clang++ --version,确认Clang已经安装成功。
    • C++ on Ubuntu或WSL2 Ubuntu on Windows 11:运行g++ --version,确认GCC已经安装成功。
    • C++ on Windows 11:在Developer PowerShell for VS 2022里运行cl -v,确认Visual Studio 2022已经装好了。
  3. 创建Hello world项目代码

    • Rust:使用cargo new创建新的Hello world脚手架项目。

    • Java:使用gradle init创建新的Hello world脚手架项目。

    • C++

      • macOS、Ubuntu或WSL2 Ubuntu on Windows 11Windows 11:使用cmake-init创建新的Hello world脚手架项目。
  4. 格式化代码

    • Rust:使用cargo fmt,让我们的代码遵循统一的格式。

    • Java:使用google-java-format,让我们的代码遵循统一的格式。

    • C++

      • macOSUbuntu或WSL2 Ubuntu on Windows 11Windows 11:使用clang-format,让我们的代码遵循统一的格式。
  5. 检查语法错误

    • Rust:使用cargo check,确保我们的代码没有错误。

    • Java:使用./gradlew compileJava,检查我们的Java代码是否有问题。

    • C++

      • macOSWindows 11:使用clang++ -fsyntax-only,确保我们的C++代码没有语法错误。
      • **Ubuntu或WSL2 Ubuntu on Windows 11:**使用g++ -fsyntax-only,确保C++代码没有语法错误。
  6. 编译

    • Rust:使用cargo build,在target/debug文件夹中编译和构建我们的Rust代码。

    • Java:使用./gradlew compileJava,在app/build文件夹中编译我们的Java代码。

    • C++

      • macOS、Windows 11Ubuntu或WSL2 Ubuntu on Windows 11:先使用能解决跨平台构建复杂性的CMake,生成特定于构建系统(如Makefile、Visual Studio项目等)的构建配置文件,指定构建类型为调试版本;然后再用CMake执行实际的构建过程。
  7. 用于开发自测的构建

    • Rust:使用cargo build,编译和构建我们的Rust代码。

    • Java:使用./gradlew build,在app/build文件夹中构建jar包。

    • C++

      • macOS、Windows 11Ubuntu或WSL2 Ubuntu on Windows 11:先使用能解决跨平台构建复杂性的CMake,生成特定于构建系统(如Makefile、Visual Studio项目等)的构建配置文件,指定构建类型为调试版本;然后再用CMake执行实际的构建过程。
  8. 开发阶段试运行

    • Rust:使用cargo run,看看我们的Rust代码运行得如何。

    • Java:使用./gradlew run,看看我们的Java代码运行得如何。

    • C++

      • macOSUbuntu或WSL2 Ubuntu on Windows 11Windows 11:直接运行可执行文件,体验我们的C++代码运行效果。
  9. 构建发布包

    • Rust:使用cargo build --release,为我们的Rust项目在target/release文件夹中创建发布包。

    • Java:使用./gradlew build,为我们的Java项目在app/build文件夹中创建发布包。

    • C++

      • macOSUbuntu或WSL2 Ubuntu on Windows 11Windows 11:先使用能解决跨平台构建复杂性的CMake,生成特定于构建系统(如Makefile、Visual Studio项目等)的构建配置文件,指定构建类型为发布版本;然后再用CMake执行实际的构建过程。
  10. 运行发布后的程序

    • RustC++ :直接运行可执行文件,享受我们的成果吧!
    • Java:使用java -jar app/build/libs/app.jar,享受我们的Java项目吧!
  11. 清除所有构建输出文件

    • Rust:使用cargo clean,保持我们的工作环境整洁。
    • Java:使用./gradlew clean,保持我们的工作环境整洁。
    • C++ :直接删除build文件夹,保持我们的工作环境整洁。

这个表格总结了使用三种语言,在不同编程环境中从设置环境、创建项目、编写和格式化代码,到检查错误、编译、运行和清理构建文件的整个Hello world创建和运行流程。

(未完待续)

如果喜欢这篇文章,别忘了给文章点个赞,好鼓励我继续写哦~😃

转载自:https://juejin.cn/post/7379117970797428790
评论
请登录