I'm trying to wrap my head around what a high-level programming language really is before it gets compiled into machine code. For example, when I type a line of code like `let varName = "example"` in languages like JavaScript or Dart, I'm shown readable text. But ultimately, everything in a computer is just 1's and 0's. So, what exactly is this non-binary language in a computer before it's compiled? How does it change during the compiling process? Additionally, I'm confused about setting up a local development environment and using the command line. I want to understand the process of writing a program in a user-friendly language, compiling it, and running it, as well as how all the different components (like the SDK for Dart with Flutter) fit together in an OS like Windows or Linux. I really need a clearer understanding of what I'm doing when I set these up and how to troubleshoot when things don't work.
3 Answers
It seems you're diving really deep into the details for a new learner, which can be overwhelming. You don't need to know how the code translates to machine language right away—focus on getting your development environment set up first. The basics of executing CLI commands and understanding how directories work in Windows or Linux are more immediately practical. I recommend checking out tutorials on setting up a local development environment specifically for Dart and Flutter before getting into the nitty-gritty of compilers and machine code.
There are generally three levels of programming languages: machine code (the binary 1's and 0's), low-level languages (like assembly), and high-level languages (like JavaScript or Python). High-level languages simplify coding by allowing you to write in a more human-readable form, abstracting away the tedious details. When you write code, it will eventually get translated into machine code; that's where a compiler comes in. It converts your readable code into a format that the computer can execute.
Think of it like following a recipe: high-level languages allow you to write the steps easily, while the compiler is the chef that turns those steps into a finished dish that the computer can understand and run.
A high-level language abstracts away the details of the underlying machine architecture. It allows you to write programs without needing to understand how the hardware executes commands. Think of it as driving a car: you just need to know how to use the pedals and wheel; the actual mechanics of the engine are hidden away. In programming, interpretive languages like JavaScript work similarly—when you write code, it gets turned into something the computer can understand, but you don't have to worry about the specifics.
Related Questions
Set Wordpress Featured Image Using Javascript
How To Fix PHP Random Being The Same
Why no WebP Support with Wordpress
Replace Wordpress Cron With Linux Cron
Customize Yoast Canonical URL Programmatically
[Centos] Delete All Files And Folders That Contain a String