diff --git a/translations/bn/1-getting-started-lessons/2-github-basics/README.md b/translations/bn/1-getting-started-lessons/2-github-basics/README.md index bcb2571f..fbad0acb 100644 --- a/translations/bn/1-getting-started-lessons/2-github-basics/README.md +++ b/translations/bn/1-getting-started-lessons/2-github-basics/README.md @@ -1,227 +1,299 @@ # গিটহাব পরিচিতি -হ্যালো, ভবিষ্যৎ ডেভেলপার! 👋 বিশ্বজুড়ে লক্ষ লক্ষ কোডারের সাথে যোগ দিতে প্রস্তুত? আমি সত্যিই উত্তেজিত আপনাকে গিটহাবের সাথে পরিচয় করিয়ে দিতে – এটি প্রোগ্রামারদের জন্য একটি সোশ্যাল মিডিয়া প্ল্যাটফর্মের মতো, তবে এখানে লাঞ্চের ছবি শেয়ার করার পরিবর্তে আমরা কোড শেয়ার করি এবং একসাথে অসাধারণ জিনিস তৈরি করি! +হ্যালো, ভবিষ্যৎ ডেভেলপার! 👋 সারা বিশ্বের কোটি কোটি কোডারের সাথে যোগ দিতে প্রস্তুত? আমি সত্যিই উত্তেজিত তোমাকে গিটহাবের সাথে পরিচয় করিয়ে দিতে – এটি প্রোগ্রামারদের জন্য সোশ্যাল মিডিয়া প্ল্যাটফর্মের মতো, তবে এখানে লাঞ্চের ছবি শেয়ার করার বদলে আমরা কোড শেয়ার করি এবং একসাথে অসাধারণ কিছু তৈরি করি! -যেটা আমাকে অবাক করে দেয় তা হলো: আপনার ফোনের প্রতিটি অ্যাপ, আপনি যে ওয়েবসাইটগুলোতে যান, এবং বেশিরভাগ টুল যা আপনি ব্যবহার করতে শিখবেন, সেগুলোই গিটহাবের মতো প্ল্যাটফর্মে ডেভেলপারদের দল দ্বারা তৈরি হয়েছে। আপনার প্রিয় মিউজিক অ্যাপ? আপনার মতো কেউ এতে অবদান রেখেছে। সেই গেম যা আপনি ছাড়তে পারছেন না? হ্যাঁ, সম্ভবত গিটহাব সহযোগিতার মাধ্যমে তৈরি। আর এখন আপনি সেই অসাধারণ কমিউনিটির অংশ হতে শিখতে যাচ্ছেন! +যেটা আমাকে অবাক করে দেয় তা হলো: তোমার ফোনের প্রতিটি অ্যাপ, তুমি যে ওয়েবসাইটগুলো ভিজিট করো, এবং বেশিরভাগ টুল যা তুমি ব্যবহার করতে শিখবে, সেগুলো ডেভেলপারদের দল দ্বারা তৈরি হয়েছে যারা গিটহাবের মতো প্ল্যাটফর্মে একসাথে কাজ করেছে। তোমার প্রিয় মিউজিক অ্যাপ? তোমার মতো কেউ সেটিতে অবদান রেখেছে। যে গেমটি তুমি ছাড়তে পারছ না? হ্যাঁ, সম্ভবত গিটহাব সহযোগিতার মাধ্যমে তৈরি। আর এখন তুমি সেই অসাধারণ কমিউনিটির অংশ হতে শিখতে যাচ্ছ! -আমি জানি প্রথমে এটি অনেক বেশি মনে হতে পারে – আমি নিজেও প্রথমবার গিটহাব পেজের দিকে তাকিয়ে ভেবেছিলাম "এটা সব কী অর্থ বোঝায়?" কিন্তু বিষয়টি হলো: প্রতিটি ডেভেলপার ঠিক আপনার মতোই এখান থেকে শুরু করেছে। এই পাঠের শেষে, আপনার নিজস্ব গিটহাব রিপোজিটরি থাকবে (এটি আপনার ব্যক্তিগত প্রকল্প প্রদর্শনী যা ক্লাউডে থাকবে), এবং আপনি শিখবেন কীভাবে আপনার কাজ সংরক্ষণ করবেন, অন্যদের সাথে শেয়ার করবেন, এবং এমন প্রকল্পে অবদান রাখবেন যা লক্ষ লক্ষ মানুষ ব্যবহার করে। +আমি জানি প্রথমে এটি একটু বেশি মনে হতে পারে – আমি নিজেও প্রথমবার গিটহাব পেজের দিকে তাকিয়ে ভেবেছিলাম, "এগুলো সব কী মানে?" কিন্তু ব্যাপারটা হলো: প্রতিটি ডেভেলপার ঠিক এখান থেকেই শুরু করেছে যেখানে তুমি এখন আছ। এই পাঠের শেষে, তোমার নিজের একটি গিটহাব রিপোজিটরি থাকবে (এটি মেঘে তোমার ব্যক্তিগত প্রকল্প প্রদর্শনী হিসেবে ভাবো), এবং তুমি শিখবে কীভাবে তোমার কাজ সংরক্ষণ করতে হয়, অন্যদের সাথে শেয়ার করতে হয়, এবং এমনকি এমন প্রকল্পে অবদান রাখতে হয় যা লক্ষ লক্ষ মানুষ ব্যবহার করে। -আমরা একসাথে এই যাত্রা শুরু করব, ধাপে ধাপে। কোনো তাড়াহুড়ো নয়, কোনো চাপ নয় – শুধু আপনি, আমি, এবং কিছু সত্যিই চমৎকার টুল যা আপনার নতুন সেরা বন্ধু হতে চলেছে! +আমরা একসাথে এই যাত্রা শুরু করব, এক ধাপে এক ধাপে। কোনো তাড়াহুড়ো নেই, কোনো চাপ নেই – শুধু তুমি, আমি, এবং কিছু দারুণ টুল যা তোমার নতুন সেরা বন্ধু হতে চলেছে! ![গিটহাব পরিচিতি](../../../../translated_images/webdev101-github.8846d7971abef6f947909b4f9d343e2a23778aa716ca6b9d71df7174ee5009ac.bn.png) -> স্কেচনোট [Tomomi Imura](https://twitter.com/girlie_mac) দ্বারা +> স্কেচনোট করেছেন [Tomomi Imura](https://twitter.com/girlie_mac) ```mermaid journey - title Your GitHub Adventure Today - section Setup - Install Git: 4: You - Create Account: 5: You - First Repository: 5: You - section Master Git - Local Changes: 4: You - Commits & Pushes: 5: You - Branching: 4: You - section Collaborate - Fork Projects: 4: You - Pull Requests: 5: You - Open Source: 5: You + title আজকের আপনার গিটহাব অ্যাডভেঞ্চার + section সেটআপ + গিট ইনস্টল করুন: 4: আপনি + অ্যাকাউন্ট তৈরি করুন: 5: আপনি + প্রথম রিপোজিটরি: 5: আপনি + section গিট আয়ত্ত করুন + স্থানীয় পরিবর্তন: 4: আপনি + কমিট এবং পুশ: 5: আপনি + ব্রাঞ্চিং: 4: আপনি + section সহযোগিতা করুন + প্রজেক্ট ফর্ক করুন: 4: আপনি + পুল রিকোয়েস্ট: 5: আপনি + ওপেন সোর্স: 5: আপনি ``` - ## প্রাক-লেকচার কুইজ [প্রাক-লেকচার কুইজ](https://ff-quizzes.netlify.app) ## পরিচিতি -আমরা উত্তেজনাপূর্ণ বিষয়গুলোতে যাওয়ার আগে, আসুন আপনার কম্পিউটারকে কিছু গিটহাব ম্যাজিকের জন্য প্রস্তুত করি! এটি একটি মাস্টারপিস তৈরি করার আগে আপনার শিল্প সরঞ্জামগুলি সংগঠিত করার মতো – সঠিক সরঞ্জাম প্রস্তুত থাকলে সবকিছু আরও মসৃণ এবং অনেক বেশি মজাদার হয়। +আমরা উত্তেজনাপূর্ণ বিষয়গুলোতে যাওয়ার আগে, আসো তোমার কম্পিউটারকে কিছু গিটহাব ম্যাজিকের জন্য প্রস্তুত করি! এটি ঠিক যেন একটি মাস্টারপিস তৈরি করার আগে তোমার আর্ট সরঞ্জামগুলো সাজানোর মতো – সঠিক টুলগুলো প্রস্তুত থাকলে সবকিছু অনেক মসৃণ এবং আরও মজাদার হয়। -আমি ব্যক্তিগতভাবে প্রতিটি সেটআপ ধাপের মাধ্যমে আপনাকে নিয়ে যাব, এবং আমি প্রতিশ্রুতি দিচ্ছি এটি প্রথমে যতটা ভীতিকর মনে হতে পারে ততটা নয়। যদি কিছু প্রথমে বোঝা না যায়, সেটি সম্পূর্ণ স্বাভাবিক! আমি আমার প্রথম ডেভেলপমেন্ট এনভায়রনমেন্ট সেটআপ করার সময় মনে করেছিলাম যেন প্রাচীন হায়ারোগ্লিফিক্স পড়ার চেষ্টা করছি। প্রতিটি ডেভেলপার ঠিক আপনার মতোই এখান থেকে শুরু করেছে, ভাবছে তারা সঠিকভাবে করছে কিনা। স্পয়লার: আপনি যদি এখানে শিখছেন, তবে আপনি ইতিমধ্যেই সঠিকভাবে করছেন! 🌟 +আমি ব্যক্তিগতভাবে প্রতিটি সেটআপ ধাপ তোমাকে দেখাব, এবং আমি প্রতিশ্রুতি দিচ্ছি এটি প্রথমে যতটা ভীতিকর মনে হতে পারে ততটা নয়। যদি কিছু প্রথমে বোঝা না যায়, সেটি একদম স্বাভাবিক! আমি মনে করি আমার প্রথম ডেভেলপমেন্ট এনভায়রনমেন্ট সেটআপ করার সময় নিজেকে প্রাচীন হায়ারোগ্লিফিক্স পড়ার চেষ্টা করার মতো অনুভব করেছিলাম। প্রতিটি ডেভেলপার ঠিক এখানেই ছিল যেখানে তুমি এখন আছ, ভাবছে তারা ঠিক করছে কিনা। স্পয়লার: যদি তুমি এখানে শিখছ, তুমি ইতিমধ্যেই ঠিক করছ! 🌟 -এই পাঠে আমরা আলোচনা করব: +এই পাঠে আমরা শিখব: -- আপনার মেশিনে আপনি যে কাজ করেন তা ট্র্যাক করা +- তোমার মেশিনে করা কাজ ট্র্যাক করা - অন্যদের সাথে প্রকল্পে কাজ করা -- ওপেন সোর্স সফটওয়্যারে অবদান রাখার উপায় +- ওপেন সোর্স সফটওয়্যারে অবদান রাখা ### প্রয়োজনীয়তা -আসুন আপনার কম্পিউটারকে কিছু গিটহাব ম্যাজিকের জন্য প্রস্তুত করি! চিন্তা করবেন না – এই সেটআপটি আপনাকে একবার করতে হবে, এবং তারপর আপনি আপনার পুরো কোডিং যাত্রার জন্য প্রস্তুত থাকবেন। +তোমার কম্পিউটারকে কিছু গিটহাব ম্যাজিকের জন্য প্রস্তুত করি! চিন্তা করো না – এই সেটআপটি কেবল একবার করতে হবে, এবং তারপর পুরো কোডিং যাত্রার জন্য তুমি প্রস্তুত থাকবে। -ঠিক আছে, আসুন ভিত্তি দিয়ে শুরু করি! প্রথমে, আমাদের দেখতে হবে গিট ইতিমধ্যেই আপনার কম্পিউটারে আছে কিনা। গিট মূলত একটি সুপার-স্মার্ট সহকারী যা আপনার কোডে আপনি যে প্রতিটি পরিবর্তন করেন তা মনে রাখে – প্রতি দুই সেকেন্ডে আতঙ্কিত হয়ে Ctrl+S চাপার চেয়ে অনেক ভালো (আমরা সবাই সেখানে ছিলাম!)। +ঠিক আছে, আসো ভিত্তি দিয়ে শুরু করি! প্রথমে, আমাদের দেখতে হবে গিট ইতিমধ্যেই তোমার কম্পিউটারে আছে কিনা। গিট হলো এমন একটি সুপার-স্মার্ট অ্যাসিস্ট্যান্টের মতো যা তোমার কোডে করা প্রতিটি পরিবর্তন মনে রাখে – প্রতি দুই সেকেন্ডে Ctrl+S চাপার চেয়ে অনেক ভালো (আমরা সবাই সেখানে ছিলাম!)। -এই ম্যাজিক কমান্ডটি আপনার টার্মিনালে টাইপ করে দেখুন গিট ইতিমধ্যেই ইনস্টল আছে কিনা: +এই ম্যাজিক কমান্ডটি তোমার টার্মিনালে টাইপ করে দেখি গিট ইতিমধ্যেই ইনস্টল করা আছে কিনা: `git --version` -যদি গিট এখনও না থাকে, চিন্তা করবেন না! শুধু [গিট ডাউনলোড করুন](https://git-scm.com/downloads) এবং এটি নিয়ে নিন। একবার আপনি এটি ইনস্টল করে নিলে, আমাদের গিটের সাথে আপনার পরিচয় করিয়ে দিতে হবে: +যদি গিট এখনও না থাকে, চিন্তা করো না! শুধু [গিট ডাউনলোড](https://git-scm.com/downloads) পেজে যাও এবং এটি ডাউনলোড করো। একবার এটি ইনস্টল হয়ে গেলে, আমাদের গিটের সাথে তোমার পরিচয় করিয়ে দিতে হবে: -> 💡 **প্রথমবারের সেটআপ**: এই কমান্ডগুলো গিটকে বলে আপনি কে। এই তথ্যটি আপনি যে প্রতিটি কমিট করেন তার সাথে সংযুক্ত থাকবে, তাই এমন একটি নাম এবং ইমেইল বেছে নিন যা আপনি প্রকাশ্যে শেয়ার করতে স্বাচ্ছন্দ্য বোধ করেন। +> 💡 **প্রথমবারের সেটআপ**: এই কমান্ডগুলো গিটকে জানায় তুমি কে। এই তথ্য প্রতিটি কমিটের সাথে সংযুক্ত থাকবে, তাই এমন একটি নাম এবং ইমেইল বেছে নাও যা তুমি প্রকাশ্যে শেয়ার করতে স্বাচ্ছন্দ্যবোধ করো। ```bash git config --global user.name "your-name" git config --global user.email "your-email" ``` -গিট ইতিমধ্যেই কনফিগার করা আছে কিনা তা পরীক্ষা করতে আপনি টাইপ করতে পারেন: +গিট ইতিমধ্যেই কনফিগার করা আছে কিনা তা পরীক্ষা করতে তুমি টাইপ করতে পারো: ```bash git config --list ``` -আপনার একটি গিটহাব অ্যাকাউন্ট, একটি কোড এডিটর (যেমন Visual Studio Code), এবং আপনার টার্মিনাল (বা: কমান্ড প্রম্পট) খুলতে হবে। +তোমার একটি গিটহাব অ্যাকাউন্ট, একটি কোড এডিটর (যেমন Visual Studio Code), এবং তোমার টার্মিনাল (অথবা: কমান্ড প্রম্পট) খুলতে হবে। -[github.com](https://github.com/) এ যান এবং যদি আপনার অ্যাকাউন্ট না থাকে তবে একটি অ্যাকাউন্ট তৈরি করুন, অথবা লগ ইন করুন এবং আপনার প্রোফাইল পূরণ করুন। +[github.com](https://github.com/) এ নেভিগেট করো এবং যদি এখনও না থাকে তবে একটি অ্যাকাউন্ট তৈরি করো, অথবা লগ ইন করে তোমার প্রোফাইল পূরণ করো। -💡 **আধুনিক টিপ**: [SSH keys](https://docs.github.com/en/authentication/connecting-to-github-with-ssh) সেটআপ করার কথা বিবেচনা করুন অথবা [GitHub CLI](https://cli.github.com/) ব্যবহার করুন যাতে পাসওয়ার্ড ছাড়াই সহজে প্রমাণীকরণ করা যায়। +💡 **আধুনিক টিপ**: পাসওয়ার্ড ছাড়াই সহজতর অথেনটিকেশনের জন্য [SSH কী](https://docs.github.com/en/authentication/connecting-to-github-with-ssh) সেটআপ করা বা [GitHub CLI](https://cli.github.com/) ব্যবহার করার কথা বিবেচনা করো। -✅ গিটহাব বিশ্বের একমাত্র কোড রিপোজিটরি নয়; আরও অনেক আছে, তবে গিটহাব সবচেয়ে পরিচিত। +✅ গিটহাব একমাত্র কোড রিপোজিটরি নয়; আরও অনেক আছে, তবে গিটহাব সবচেয়ে পরিচিত। ### প্রস্তুতি -আপনার স্থানীয় মেশিনে (ল্যাপটপ বা পিসি) একটি কোড প্রকল্পের জন্য একটি ফোল্ডার এবং গিটহাবে একটি পাবলিক রিপোজিটরি প্রয়োজন হবে, যা অন্যদের প্রকল্পে অবদান রাখার উদাহরণ হিসেবে কাজ করবে। +তোমার লোকাল মেশিনে (ল্যাপটপ বা পিসি) একটি কোড প্রকল্পের ফোল্ডার এবং গিটহাবে একটি পাবলিক রিপোজিটরি প্রয়োজন হবে, যা অন্যদের প্রকল্পে অবদান রাখার উদাহরণ হিসেবে কাজ করবে। -### আপনার কোড নিরাপদ রাখা +### তোমার কোড নিরাপদ রাখা -আসুন নিরাপত্তা সম্পর্কে একটু কথা বলি – তবে চিন্তা করবেন না, আমরা আপনাকে ভীতিকর কিছু দিয়ে অভিভূত করব না! এই নিরাপত্তা অনুশীলনগুলো আপনার গাড়ি বা বাড়ি লক করার মতো। এগুলো সহজ অভ্যাস যা স্বাভাবিক হয়ে যায় এবং আপনার কঠোর পরিশ্রমকে সুরক্ষিত রাখে। +আসো নিরাপত্তা নিয়ে একটু কথা বলি – তবে চিন্তা করো না, আমরা তোমাকে ভীতিকর কিছু দিয়ে অভিভূত করব না! এই নিরাপত্তা অভ্যাসগুলোকে তোমার গাড়ি বা বাড়ি লক করার মতো ভাবো। এগুলো সহজ অভ্যাস যা স্বাভাবিক হয়ে যায় এবং তোমার কঠোর পরিশ্রমকে সুরক্ষিত রাখে। -আমরা আপনাকে শুরু থেকেই গিটহাবের সাথে কাজ করার আধুনিক, নিরাপদ উপায়গুলো দেখাব। এভাবে, আপনি ভালো অভ্যাস তৈরি করবেন যা আপনার পুরো কোডিং ক্যারিয়ারে আপনাকে সাহায্য করবে। +আমরা শুরু থেকেই গিটহাবের সাথে কাজ করার আধুনিক, নিরাপদ উপায়গুলো দেখাব। এভাবে, তুমি এমন ভালো অভ্যাস তৈরি করবে যা তোমার কোডিং ক্যারিয়ার জুড়ে তোমাকে সাহায্য করবে। -গিটহাবের সাথে কাজ করার সময়, নিরাপত্তার সেরা অনুশীলনগুলো অনুসরণ করা গুরুত্বপূর্ণ: +গিটহাবের সাথে কাজ করার সময়, নিরাপত্তার সেরা অভ্যাসগুলো অনুসরণ করা গুরুত্বপূর্ণ: -| নিরাপত্তার ক্ষেত্র | সেরা অনুশীলন | কেন এটি গুরুত্বপূর্ণ | -|--------------------|--------------|-----------------------| -| **প্রমাণীকরণ** | SSH keys বা Personal Access Tokens ব্যবহার করুন | পাসওয়ার্ড কম নিরাপদ এবং ধীরে ধীরে বাদ দেওয়া হচ্ছে | -| **টু-ফ্যাক্টর প্রমাণীকরণ** | আপনার গিটহাব অ্যাকাউন্টে 2FA চালু করুন | অ্যাকাউন্ট সুরক্ষার জন্য একটি অতিরিক্ত স্তর যোগ করে | -| **রিপোজিটরি নিরাপত্তা** | সংবেদনশীল তথ্য কখনোই কমিট করবেন না | API keys এবং পাসওয়ার্ড কখনোই পাবলিক রিপোজিটরিতে থাকা উচিত নয় | -| **ডিপেনডেন্সি ম্যানেজমেন্ট** | Dependabot চালু করুন আপডেটের জন্য | আপনার ডিপেনডেন্সিগুলো নিরাপদ এবং আপ-টু-ডেট রাখে | +| নিরাপত্তার ক্ষেত্র | সেরা অভ্যাস | কেন এটি গুরুত্বপূর্ণ | +|--------------------|-------------|-----------------------| +| **অথেনটিকেশন** | SSH কী বা পার্সোনাল অ্যাক্সেস টোকেন ব্যবহার করো | পাসওয়ার্ড কম নিরাপদ এবং ধীরে ধীরে বাদ দেওয়া হচ্ছে | +| **টু-ফ্যাক্টর অথেনটিকেশন** | তোমার গিটহাব অ্যাকাউন্টে 2FA চালু করো | অ্যাকাউন্ট সুরক্ষার জন্য একটি অতিরিক্ত স্তর যোগ করে | +| **রিপোজিটরি নিরাপত্তা** | সংবেদনশীল তথ্য কখনোই কমিট করো না | API কী এবং পাসওয়ার্ড কখনোই পাবলিক রিপোতে থাকা উচিত নয় | +| **ডিপেনডেন্সি ম্যানেজমেন্ট** | আপডেটের জন্য Dependabot চালু করো | তোমার ডিপেনডেন্সিগুলো সুরক্ষিত এবং আপডেট রাখে | -> ⚠️ **গুরুত্বপূর্ণ নিরাপত্তা স্মরণ**: কখনোই API keys, পাসওয়ার্ড, বা অন্যান্য সংবেদনশীল তথ্য কোনো রিপোজিটরিতে কমিট করবেন না। সংবেদনশীল তথ্য সুরক্ষিত রাখতে environment variables এবং `.gitignore` ফাইল ব্যবহার করুন। +> ⚠️ **গুরুত্বপূর্ণ নিরাপত্তা স্মরণ**: কখনোই API কী, পাসওয়ার্ড, বা অন্যান্য সংবেদনশীল তথ্য কোনো রিপোজিটরিতে কমিট করো না। সংবেদনশীল ডেটা সুরক্ষিত রাখতে এনভায়রনমেন্ট ভেরিয়েবল এবং `.gitignore` ফাইল ব্যবহার করো। -**আধুনিক প্রমাণীকরণ সেটআপ:** +**আধুনিক অথেনটিকেশন সেটআপ:** ```bash -# Generate SSH key (modern ed25519 algorithm) +# SSH কী তৈরি করুন (আধুনিক ed25519 অ্যালগরিদম) ssh-keygen -t ed25519 -C "your_email@example.com" -# Set up Git to use SSH +# SSH ব্যবহার করার জন্য Git সেট আপ করুন git remote set-url origin git@github.com:username/repository.git ``` -> 💡 **প্রো টিপ**: SSH keys বারবার পাসওয়ার্ড প্রবেশ করার প্রয়োজনীয়তা দূর করে এবং ঐতিহ্যবাহী প্রমাণীকরণ পদ্ধতির চেয়ে বেশি নিরাপদ। +> 💡 **প্রো টিপ**: SSH কী বারবার পাসওয়ার্ড প্রবেশ করার প্রয়োজনীয়তা দূর করে এবং ঐতিহ্যবাহী অথেনটিকেশন পদ্ধতির চেয়ে বেশি সুরক্ষিত। --- -## আপনার কোড পেশাদারের মতো পরিচালনা করা +## তোমার কোড প্রফেশনালের মতো ম্যানেজ করা -ঠিক আছে, এখন জিনিসগুলো সত্যিই উত্তেজনাপূর্ণ হতে চলেছে! 🎉 আমরা শিখতে যাচ্ছি কীভাবে পেশাদারদের মতো আপনার কোড ট্র্যাক এবং পরিচালনা করবেন, এবং সত্যি বলতে, এটি শেখানো আমার প্রিয় বিষয়গুলোর একটি কারণ এটি একটি বড় পরিবর্তনকারী। +ঠিক আছে, এখনই জিনিসগুলো সত্যিই উত্তেজনাপূর্ণ হতে চলেছে! 🎉 আমরা শিখতে যাচ্ছি কীভাবে প্রফেশনালদের মতো তোমার কোড ট্র্যাক এবং ম্যানেজ করতে হয়, এবং সত্যি বলতে, এটি শেখানো আমার প্রিয় বিষয়গুলোর একটি কারণ এটি সত্যিই একটি গেম-চেঞ্জার। -এটি কল্পনা করুন: আপনি একটি অসাধারণ গল্প লিখছেন, এবং আপনি প্রতিটি খসড়া, প্রতিটি চমৎকার সম্পাদনা, এবং প্রতিটি "ওয়েট, এটি জিনিয়াস!" মুহূর্তের ট্র্যাক রাখতে চান। গিট আপনার কোডের জন্য ঠিক সেটাই করে! এটি এমন একটি সময়-ভ্রমণকারী নোটবুকের মতো যা সবকিছু মনে রাখে – প্রতিটি কীস্ট্রোক, প্রতিটি পরিবর্তন, প্রতিটি "ওপস, এটি সবকিছু ভেঙে দিয়েছে" মুহূর্ত যা আপনি তাৎক্ষণিকভাবে পূর্বাবস্থায় ফিরিয়ে আনতে পারেন। +ভাবো: তুমি একটি অসাধারণ গল্প লিখছ, এবং তুমি প্রতিটি খসড়া, প্রতিটি উজ্জ্বল সম্পাদনা, এবং প্রতিটি "ওয়াও, এটি অসাধারণ!" মুহূর্ত ট্র্যাক করতে চাও। গিট ঠিক সেটাই করে তোমার কোডের জন্য! এটি এমন একটি টাইম-ট্রাভেলিং নোটবুকের মতো যা সবকিছু মনে রাখে – প্রতিটি কীস্ট্রোক, প্রতিটি পরিবর্তন, প্রতিটি "ওহ, এটি সবকিছু ভেঙে দিয়েছে" মুহূর্ত যা তুমি সঙ্গে সঙ্গে পূর্বাবস্থায় ফিরিয়ে আনতে পারো। -আমি স্বীকার করছি – এটি প্রথমে অপ্রতিরোধ্য মনে হতে পারে। যখন আমি শুরু করেছিলাম, আমি ভেবেছিলাম "আমি কেন আমার ফাইলগুলো সাধারণভাবে সংরক্ষণ করতে পারি না?" কিন্তু আমাকে বিশ্বাস করুন: একবার গিট আপনার জন্য ক্লিক করলে (এবং এটি করবে!), আপনার একটি আলোকিত মুহূর্ত হবে যেখানে আপনি ভাববেন "আমি কীভাবে আমার জীবনযাত্রা গিট ছাড়া চালিয়ে গিয়েছিলাম?" এটি এমন যেন আপনি উড়তে পারেন আবিষ্কার করা, যখন আপনি সব সময় হাঁটছিলেন! +আমি স্বীকার করছি – এটি প্রথমে অপ্রতিরোধ্য মনে হতে পারে। যখন আমি শুরু করেছিলাম, আমি ভেবেছিলাম "আমি কেন আমার ফাইলগুলো সাধারণভাবে সংরক্ষণ করতে পারি না?" কিন্তু আমাকে বিশ্বাস করো: একবার গিট তোমার জন্য ক্লিক করলে (এবং এটি করবে!), তোমার একটি লাইটবাল্ব মুহূর্ত হবে যেখানে তুমি ভাববে "আমি কীভাবে আগে এটি ছাড়া কোড করতাম?" এটি ঠিক যেন তুমি উড়তে পারো তা আবিষ্কার করছ, যখন তুমি সারা জীবন হেঁটে বেড়াচ্ছিলে! -ধরা যাক আপনার কাছে একটি লোকাল ফোল্ডার আছে যেখানে কিছু কোড প্রকল্প রয়েছে এবং আপনি গিট ব্যবহার করে আপনার অগ্রগতি ট্র্যাক করতে চান - এটি একটি ভার্সন কন্ট্রোল সিস্টেম। কিছু লোক গিট ব্যবহার করার সাথে ভবিষ্যৎ নিজেকে একটি প্রেমপত্র লেখার তুলনা করে। আপনার কমিট মেসেজগুলো কয়েক দিন বা সপ্তাহ বা মাস পরে পড়লে আপনি মনে করতে পারবেন কেন আপনি একটি সিদ্ধান্ত নিয়েছিলেন, বা একটি পরিবর্তন "রোলব্যাক" করতে পারবেন - অর্থাৎ, যখন আপনি ভালো "কমিট মেসেজ" লিখবেন। +ধরা যাক তোমার লোকাল ফোল্ডারে কিছু কোড প্রকল্প আছে এবং তুমি গিট ব্যবহার করে তোমার অগ্রগতি ট্র্যাক করতে চাও - এটি একটি ভার্সন কন্ট্রোল সিস্টেম। কিছু লোক গিট ব্যবহার করাকে ভবিষ্যতের নিজের জন্য একটি প্রেমপত্র লেখার সাথে তুলনা করে। কয়েক দিন, সপ্তাহ বা মাস পরে তোমার কমিট মেসেজগুলো পড়ে তুমি মনে করতে পারবে কেন তুমি একটি সিদ্ধান্ত নিয়েছিলে, বা একটি পরিবর্তন "রোলব্যাক" করতে পারবে – অর্থাৎ, যখন তুমি ভালো "কমিট মেসেজ" লিখবে। ```mermaid flowchart TD - A[📁 Your Project Files] --> B{Is it a Git Repository?} - B -->|No| C[git init] - B -->|Yes| D[Make Changes] + A[📁 আপনার প্রকল্প ফাইলগুলি] --> B{এটি কি একটি গিট রিপোজিটরি?} + B -->|না| C[git init] + B -->|হ্যাঁ| D[পরিবর্তন করুন] C --> D D --> E[git add .] - E --> F["git commit -m 'message'"] + E --> F["git commit -m 'বার্তা'"] F --> G[git push] - G --> H[🌟 Code on GitHub!] + G --> H[🌟 কোড GitHub-এ!] - H --> I{Want to collaborate?} - I -->|Yes| J[Fork & Clone] - I -->|No| D - J --> K[Create Branch] - K --> L[Make Changes] + H --> I{সহযোগিতা করতে চান?} + I -->|হ্যাঁ| J[Fork & Clone] + I -->|না| D + J --> K[শাখা তৈরি করুন] + K --> L[পরিবর্তন করুন] L --> M[Pull Request] - M --> N[🎉 Contributing!] + M --> N[🎉 অবদান রাখছেন!] style A fill:#fff59d style H fill:#c8e6c9 style N fill:#ff4081,color:#fff ``` +### কাজ: তোমার প্রথম রিপোজিটরি তৈরি করো! -### কাজ: আপনার প্রথম রিপোজিটরি তৈরি করুন! - -> 🎯 **আপনার মিশন (এবং আমি আপনার জন্য খুবই উত্তেজিত!)**: আমরা একসাথে আপনার প্রথম গিটহাব রিপোজিটরি তৈরি করতে যাচ্ছি! এখানে শেষ করার সময়, আপনার কোড যেখানে থাকবে ইন্টারনেটে আপনার নিজস্ব ছোট্ট কোণ থাকবে, এবং আপনি আপনার প্রথম "কমিট" করবেন (এটি ডেভেলপারদের ভাষায় একটি খুব স্মার্ট উপায়ে আপনার কাজ সংরক্ষণ করার জন্য)। +> 🎯 **তোমার মিশন (এবং আমি তোমার জন্য খুবই উত্তেজিত!)**: আমরা একসাথে তোমার প্রথম গিটহাব রিপোজিটরি তৈরি করতে যাচ্ছি! এখানে কাজ শেষ হওয়ার পরে, তোমার কোড যেখানে থাকবে ইন্টারনেটে তোমার নিজস্ব একটি ছোট কোণা থাকবে, এবং তুমি তোমার প্রথম "কমিট" করবে (এটি ডেভেলপারদের ভাষায় খুব স্মার্ট উপায়ে তোমার কাজ সংরক্ষণ করার অর্থ)। > -> এটি সত্যিই একটি বিশেষ মুহূর্ত – আপনি বিশ্বব্যাপী ডেভেলপারদের কমিউনিটিতে আনুষ্ঠানিকভাবে যোগ দিতে যাচ্ছেন! আমি এখনও আমার প্রথম রিপো তৈরি করার উত্তেজনা মনে করি এবং ভাবি "ওয়াও, আমি সত্যিই এটি করছি!" +> এটি সত্যিই একটি বিশেষ মুহূর্ত – তুমি আনুষ্ঠানিকভাবে ডেভেলপারদের বৈশ্বিক কমিউনিটিতে যোগ দিতে যাচ্ছ! আমি এখনও আমার প্রথম রিপো তৈরি করার উত্তেজনা মনে করি এবং ভেবেছিলাম "ওয়াও, আমি সত্যিই এটি করছি!" -আসুন একসাথে এই অ্যাডভেঞ্চারটি শুরু করি, ধাপে ধাপে। প্রতিটি অংশে সময় নিন – তাড়াহুড়ো করার জন্য কোনো পুরস্কার নেই, এবং আমি প্রতিশ্রুতি দিচ্ছি প্রতিটি ধাপই অর্থপূর্ণ হবে। মনে রাখবেন, আপনি যে কোডিং সুপারস্টারকে প্রশংসা করেন তিনি এক সময় ঠিক আপনার মতোই ছিলেন, তার প্রথম রিপোজিটরি তৈরি করতে যাচ্ছিলেন। কতটা চমৎকার, তাই না? +আসো এই অ্যাডভেঞ্চার একসাথে করি, ধাপে ধাপে। প্রতিটি অংশে সময় নাও – তাড়াহুড়োর জন্য কোনো পুরস্কার নেই, এবং আমি প্রতিশ্রুতি দিচ্ছি প্রতিটি ধাপ অর্থবহ হবে। মনে রেখো, প্রতিটি কোডিং সুপারস্টার যাকে তুমি প্রশংসা করো, একসময় ঠিক এখানেই বসে ছিল, তাদের প্রথম রিপোজিটরি তৈরি করতে যাচ্ছিল। কতটা দারুণ, তাই না? -> ভিডিওটি দেখুন +> ভিডিও দেখো > -> [![গিট এবং গিটহাব বেসিকস ভিডিও](https://img.youtube.com/vi/9R31OUPpxU4/0.jpg)](https://www.youtube.com/watch?v=9R31OUPpxU4) +> [![গিট এবং গিটহাব বেসিক ভিডিও](https://img.youtube.com/vi/9R31OUPpxU4/0.jpg)](https://www.youtube.com/watch?v=9R31OUPpxU4) -**আসুন একসাথে এটি করি:** +**চলো একসাথে করি:** -1. **গিটহাবে আপনার রিপোজিটরি তৈরি করুন**। GitHub.com এ যান এবং সেই উজ্জ্বল সবুজ **New** বোতাম (অথবা উপরের ডান কোণে **+** চিহ্ন) খুঁজুন। এটি ক্লিক করুন এবং **New repository** নির্বাচন করুন। +1. **গিটহাবে তোমার রিপোজিটরি তৈরি করো**। GitHub.com এ যাও এবং সেই উজ্জ্বল সবুজ **New** বোতামটি (অথবা উপরের ডান কোণে **+** চিহ্ন) খুঁজে বের করো। এটি ক্লিক করো এবং **New repository** নির্বাচন করো। এখানে কী করতে হবে: - 1. আপনার রিপোজিটরিকে একটি নাম দিন – এটি আপনার জন্য অর্থবহ কিছু করুন! - 1. চাইলে একটি বিবরণ যোগ করুন (এটি অন্যদের আপনার প্রকল্পটি কী সম্পর্কে বুঝতে সাহায্য করে) - 1. এটি পাবলিক (সবাই এটি দেখতে পারে) বা প্রাইভেট (শুধুমাত্র আপনার জন্য) করতে চান কিনা তা সিদ্ধান্ত নিন - 1. আমি একটি README ফাইল যোগ করার জন্য বাক্সটি চেক করার পরামর্শ দিচ্ছি – এটি আপনার প্রকল্পের সামনের পৃষ্ঠা - 1. **Create repository** ক্লিক করুন এবং উদযাপন করুন – আপনি আপনার প্রথম রিপো তৈরি করেছেন! 🎉 + 1. তোমার রিপোজিটরিকে একটি নাম দাও – এটি তোমার জন্য অর্থবহ কিছু হওয়া উচিত! + 1. চাইলে একটি বিবরণ যোগ করো (এটি অন্যদের বুঝতে সাহায্য করে তোমার প্রকল্পটি কী সম্পর্কে) + 1. এটি পাবলিক (সবাই দেখতে পারবে) বা প্রাইভেট (শুধু তোমার জন্য) করতে চাও কিনা তা নির্ধারণ করো + 1. আমি একটি README ফাইল যোগ করার বাক্সটি চেক করার পরামর্শ দিচ্ছি – এটি তোমার প্রকল্পের সামনের পৃষ্ঠা হিসেবে কাজ করে + 1. **Create repository** ক্লিক করো এবং উদযাপন করো – তুমি তোমার প্রথম রিপো তৈরি করেছ! 🎉 -2. **আপনার প্রকল্প ফোল্ডারে যান**। এখন আসুন আপনার টার্মিনাল খুলুন (চিন্তা করবেন না, এটি দেখতে যতটা ভীতিকর মনে হয় ততটা নয়!)। আমাদের আপনার কম্পিউটারকে বলতে হবে আপনার প্রকল্প ফাইলগুলো কোথায়। এই কমান্ডটি টাইপ করুন: +2. **তোমার প্রকল্প ফোল্ডারে নেভিগেট করো**। এখন আসো তোমার টার্মিনাল খুলে ফেলি (চিন্তা করো না, এটি দেখতে যতটা ভীতিকর মনে হয় ততটা নয়!)। আমাদের তোমার কম্পিউটারকে বলতে হবে তোমার প্রকল্প ফাইলগুলো কোথায়। এই কমান্ডটি টাইপ করো: ```bash cd [name of your folder] ``` **আমরা এখানে কী করছি:** - - আমরা মূলত বলছি "হে কম্পিউটার, আমাকে আমার প্রকল্প ফোল্ডারে নিয়ে যাও" - - এটি আপনার ডেস্কটপে একটি নির্দিষ্ট ফোল্ডার খোলার মতো, তবে আমরা এটি টেক্সট কমান্ড দিয়ে করছি - - `[name of your folder]` এর জায়গায় আপনার প্রকল্প ফোল্ডারের প্রকৃত নাম দিন + - আমরা মূলত বলছি "হে কম্পিউটার, আমাকে আমার প্রকল্প ফোল্ডারে নিয়ে চলো" + - এটি তোমার ডেস্কটপে একটি নির্দিষ্ট ফোল্ডার খোলার মতো, তবে আমরা এটি টেক্সট কমান্ড দিয়ে করছি + - `[name of your folder]` এর জায়গায় তোমার প্রকল্প ফোল্ডারের প্রকৃত নাম বসাও -3. **আপনার ফোল্ডারকে একটি গিট রিপোজিটরিতে পরিণত করুন**। এখানেই ম্যাজিক ঘটে! টাইপ করুন: +3. **তোমার ফোল্ডারকে একটি গিট রিপোজিটরিতে রূপান্তর করো**। এখানেই ম্যাজিক ঘটে! টাইপ করো: ```bash git init ``` - **এখানে কী ঘটেছে (খুবই চমৎ -**আমরা যা করলাম:** -- আপনার স্থানীয় প্রকল্প এবং আপনার GitHub রিপোজিটরির মধ্যে একটি সংযোগ তৈরি করেছি -- "Origin" আপনার GitHub রিপোজিটরির একটি ডাকনাম – এটি ঠিক আপনার ফোনে একটি কন্টাক্ট যোগ করার মতো -- এখন আপনার স্থানীয় Git জানে কোথায় আপনার কোড পাঠাতে হবে যখন আপনি এটি শেয়ার করতে প্রস্তুত + **এখানে কী হলো (দারুণ ব্যাপার!):** + - গিট তোমার প্রকল্পে একটি লুকানো `.git` ফোল্ডার তৈরি করেছে – তুমি এটি দেখতে পাবে না, তবে এটি সেখানে আছে! + - তোমার সাধারণ ফোল্ডার এখন একটি "রিপোজিটরি" যা তোমার করা প্রতিটি পরিবর্তন ট্র্যাক করতে পারে + - এটি ঠিক যেন তোমার ফোল্ডারকে সুপারপাওয়ার দেওয়া হয়েছে যা সবকিছু মনে রাখে + +4. **কী ঘটছে তা পরীক্ষা করো**। আসো দেখি গিট তোমার প্রকল্প সম্পর্কে এখন কী ভাবছে: + + ```bash + git status + ``` + + **গিট তোমাকে যা বলছে তা বোঝা:** + + তুমি এমন কিছু দেখতে পারো যা এরকম দেখায়: + + ```output + Changes not staged for commit: + (use "git add ..." to update what will be committed) + (use "git restore ..." to discard changes in working directory) + + modified: file.txt + modified: file2.txt + ``` + + **ভয় পেও না! এর মানে হলো:** + - **লাল** রঙের ফাইলগুলো হলো এমন ফাইল যেগুলোতে পরিবর্তন হয়েছে কিন্তু এখনও সংরক্ষণের জন্য প্রস্তুত নয় + - **সবুজ** রঙের ফাইলগুলো (যখন তুমি দেখবে) সংরক্ষণের জন্য প্রস্তুত + - গিট সহায়ক হয়ে তোমাকে ঠিক কী করতে হবে তা বলছে + + > 💡 **প্রো টিপ**: `git status` কমান্ড তোমার সেরা বন্ধু! যখনই তুমি বিভ্রান্ত হবে, এটি ব্যবহার করো। এটি ঠিক যেন গিটকে জিজ্ঞাসা করা "হে, এখন কী অবস্থা?" + +5. **তোমার ফাইলগুলো সংরক্ষণের জন্য প্রস্তুত করো** (এটি "স্টেজিং" নামে পরিচিত): + + ```bash + git add . + ``` + + **আমরা যা করলাম:** + - আমরা গিটকে বললাম "হে, আমি আমার পরবর্তী সংরক্ষণে আমার সব ফাইল অন্তর্ভুক্ত করতে চাই" + - `.` হলো "এই ফোল্ডারের সবকিছু" বলার মতো + - এখন তোমার ফাইলগুলো "স্টেজড" এবং পরবর্তী ধাপের জন্য প্রস্তুত + + **আরও বেছে নিতে চাও?** তুমি নির্দিষ্ট ফাইলগুলো যোগ করতে পারো: + + ```bash + git add [file or folder name] + ``` + + **তুমি কেন এটি করতে চাও?** + - কখনো কখনো তুমি সম্পর্কিত পরিবর্তনগুলো একসাথে সংরক্ষণ করতে চাও + - এটি তোমার কাজকে যৌক্তিক অংশে সংগঠিত করতে সাহায্য করে + - এটি বোঝা সহজ করে তোলে কী পরিবর্তন হয়েছে এবং কখন + + **মত পরিবর্তন করেছ?** চিন্তা করো না! তুমি ফাইলগুলোকে এইভাবে আনস্টেজ করতে পারো: + + ```bash + # সবকিছু আনস্টেজ করুন + git reset + + # শুধুমাত্র একটি ফাইল আনস্টেজ করুন + git reset [file name] + ``` + + চিন্তা করো না – এটি তোমার কাজ মুছে দেয় না, এটি কেবল ফাইলগুলোকে "সংরক্ষণের জন্য প্রস্তুত" তালিকা থেকে সরিয়ে দেয়। + +6. **তোমার কাজ স্থায়ীভাবে সংরক্ষণ করো** (তোমার প্রথম কমিট তৈরি করো!): + + ```bash + git commit -m "first commit" + ``` + + **🎉 অভিনন্দন! তুমি তোমার প্রথম কমিট করেছ!** + + **এখানে কী হলো:** + - গিট এই মুহূর্তে তোমার স্টেজড ফাইলগুলোর একটি "স্ন্যাপশট" নিয়েছে + - তোমার কমিট মেস + - আমরা আপনার স্থানীয় প্রকল্প এবং আপনার GitHub রিপোজিটরির মধ্যে একটি সংযোগ তৈরি করেছি + - "Origin" হল আপনার GitHub রিপোজিটরির একটি ডাকনাম – এটি ঠিক আপনার ফোনে একটি কন্টাক্ট যোগ করার মতো + - এখন আপনার স্থানীয় Git জানে কখন এবং কোথায় আপনার কোড পাঠাতে হবে যখন আপনি এটি শেয়ার করতে প্রস্তুত -💡 **সহজ উপায়**: যদি আপনার কাছে GitHub CLI ইনস্টল করা থাকে, তাহলে এটি একটি কমান্ডে করা সম্ভব: + 💡 **সহজ উপায়**: যদি আপনার কাছে GitHub CLI ইনস্টল করা থাকে, তাহলে এটি একটি কমান্ডেই করা সম্ভব: ```bash gh repo create my-repo --public --push --source=. ``` -8. **আপনার কোড GitHub-এ পাঠান** (বড় মুহূর্ত!): +8. **আপনার কোড GitHub-এ পাঠান** (বড় মুহূর্ত!): ```bash git push -u origin main ``` -**🚀 এটাই! আপনি আপনার কোড GitHub-এ আপলোড করছেন!** + **🚀 এটাই! আপনি আপনার কোড GitHub-এ আপলোড করছেন!** + + **কি ঘটছে:** + - আপনার কমিটগুলো আপনার কম্পিউটার থেকে GitHub-এ যাচ্ছে + - `-u` ফ্ল্যাগ একটি স্থায়ী সংযোগ সেট আপ করে যাতে ভবিষ্যতে পুশ করা সহজ হয় + - "main" হল আপনার প্রধান ব্রাঞ্চের নাম (যেমন প্রধান ফোল্ডার) + - এর পরে, ভবিষ্যতে আপলোডের জন্য আপনি শুধু `git push` টাইপ করতে পারেন! -**কি ঘটছে:** -- আপনার কম্পিউটার থেকে GitHub-এ আপনার কমিটগুলো যাচ্ছে -- `-u` ফ্ল্যাগ একটি স্থায়ী সংযোগ সেট আপ করে যাতে ভবিষ্যতে পুশ করা সহজ হয় -- "main" আপনার প্রধান ব্রাঞ্চের নাম (যেমন প্রধান ফোল্ডার) -- এর পরে, ভবিষ্যতে আপলোডের জন্য আপনি শুধু `git push` টাইপ করতে পারেন! + 💡 **দ্রুত নোট**: যদি আপনার ব্রাঞ্চের নাম অন্য কিছু হয় (যেমন "master"), তাহলে সেই নাম ব্যবহার করুন। আপনি `git branch --show-current` দিয়ে চেক করতে পারেন। -💡 **দ্রুত নোট**: যদি আপনার ব্রাঞ্চের নাম অন্য কিছু হয় (যেমন "master"), তাহলে সেই নাম ব্যবহার করুন। আপনি `git branch --show-current` দিয়ে চেক করতে পারেন। +9. **আপনার নতুন দৈনিক কোডিং রুটিন** (এটাই আসক্তিকর হয়ে উঠবে!): -9. **আপনার নতুন দৈনিক কোডিং রিদম** (এটাই আসক্তি তৈরি করে!): - -এখন থেকে, যখনই আপনি আপনার প্রকল্পে পরিবর্তন করবেন, আপনার কাছে এই সহজ তিন-ধাপের প্রক্রিয়া থাকবে: + এখন থেকে, যখনই আপনি আপনার প্রকল্পে পরিবর্তন করবেন, আপনার জন্য এই সহজ তিন ধাপের নাচ: ```bash git add . @@ -229,70 +301,69 @@ flowchart TD git push ``` -**এটি আপনার কোডিং হার্টবিট হয়ে যায়:** -- আপনার কোডে কিছু চমৎকার পরিবর্তন করুন ✨ -- `git add` দিয়ে সেগুলো স্টেজ করুন ("Git, এই পরিবর্তনগুলো লক্ষ্য করো!") -- `git commit` এবং একটি বর্ণনামূলক বার্তা দিয়ে সেগুলো সংরক্ষণ করুন (ভবিষ্যতের আপনি আপনাকে ধন্যবাদ জানাবে!) -- `git push` দিয়ে সেগুলো বিশ্বে শেয়ার করুন 🚀 -- পুনরাবৃত্তি করুন – সত্যিই, এটি শ্বাস নেওয়ার মতো স্বাভাবিক হয়ে যায়! + **এটাই আপনার কোডিং হৃদস্পন্দন হয়ে উঠবে:** + - আপনার কোডে কিছু অসাধারণ পরিবর্তন করুন ✨ + - `git add` দিয়ে সেগুলো স্টেজ করুন ("Git, এই পরিবর্তনগুলো খেয়াল করো!") + - `git commit` এবং একটি বর্ণনামূলক বার্তা দিয়ে সেগুলো সংরক্ষণ করুন (ভবিষ্যতের আপনি আপনাকে ধন্যবাদ জানাবে!) + - `git push` দিয়ে সেগুলো বিশ্বব্যাপী শেয়ার করুন 🚀 + - বারবার করুন – সত্যি, এটি শ্বাস নেওয়ার মতো স্বাভাবিক হয়ে যাবে! -আমি এই ওয়ার্কফ্লোটি পছন্দ করি কারণ এটি ভিডিও গেমে একাধিক সেভ পয়েন্ট থাকার মতো। এমন একটি পরিবর্তন করেছেন যা আপনি পছন্দ করেন? কমিট করুন! কিছু ঝুঁকিপূর্ণ চেষ্টা করতে চান? সমস্যা নেই – যদি কিছু ভুল হয়, আপনি সর্বদা আপনার শেষ কমিটে ফিরে যেতে পারেন! + আমি এই ওয়ার্কফ্লো ভালোবাসি কারণ এটি ভিডিও গেমে একাধিক সেভ পয়েন্ট থাকার মতো। এমন একটি পরিবর্তন করেছেন যা আপনি পছন্দ করেন? কমিট করুন! কিছু ঝুঁকিপূর্ণ চেষ্টা করতে চান? সমস্যা নেই – যদি কিছু ভুল হয়, আপনি সর্বদা আপনার শেষ কমিটে ফিরে যেতে পারেন! -> 💡 **টিপ**: আপনি `.gitignore` ফাইল গ্রহণ করতে চাইতে পারেন যাতে আপনি ট্র্যাক করতে না চাওয়া ফাইলগুলো GitHub-এ না দেখায় - যেমন সেই নোট ফাইল যা আপনি একই ফোল্ডারে সংরক্ষণ করেন কিন্তু একটি পাবলিক রিপোজিটরিতে থাকার কোনো স্থান নেই। আপনি [.gitignore templates](https://github.com/github/gitignore) এ টেমপ্লেট খুঁজে পেতে পারেন বা [gitignore.io](https://www.toptal.com/developers/gitignore) ব্যবহার করে একটি তৈরি করতে পারেন। + > 💡 **টিপ**: আপনি একটি `.gitignore` ফাইল গ্রহণ করতে চাইতে পারেন যাতে এমন ফাইলগুলো GitHub-এ না আসে যা আপনি ট্র্যাক করতে চান না - যেমন সেই নোট ফাইল যা আপনি একই ফোল্ডারে সংরক্ষণ করেন কিন্তু একটি পাবলিক রিপোজিটরিতে থাকার কোনো জায়গা নেই। `.gitignore` ফাইলের টেমপ্লেট আপনি [.gitignore templates](https://github.com/github/gitignore) এ খুঁজে পেতে পারেন বা [gitignore.io](https://www.toptal.com/developers/gitignore) ব্যবহার করে একটি তৈরি করতে পারেন। -### 🧠 **প্রথম রিপোজিটরি চেক-ইন: কেমন লাগলো?** +### 🧠 **প্রথম রিপোজিটরি চেক-ইন: কেমন লাগল?** -**এক মুহূর্ত উদযাপন এবং চিন্তা করুন:** -- প্রথমবার আপনার কোড GitHub-এ দেখতে কেমন লাগলো? -- কোন ধাপটি সবচেয়ে বিভ্রান্তিকর ছিল এবং কোনটি আশ্চর্যজনকভাবে সহজ ছিল? -- আপনি কি আপনার নিজের ভাষায় `git add`, `git commit`, এবং `git push` এর পার্থক্য ব্যাখ্যা করতে পারেন? +**একটু সময় নিয়ে উদযাপন করুন এবং ভাবুন:** +- আপনার কোড প্রথমবার GitHub-এ দেখতে কেমন লাগল? +- কোন ধাপটি সবচেয়ে বিভ্রান্তিকর লাগল, এবং কোনটি আশ্চর্যজনকভাবে সহজ লাগল? +- আপনি কি নিজের ভাষায় `git add`, `git commit`, এবং `git push` এর পার্থক্য ব্যাখ্যা করতে পারবেন? ```mermaid stateDiagram-v2 - [*] --> LocalFiles: Create project + [*] --> LocalFiles: প্রকল্প তৈরি করুন LocalFiles --> Staged: git add . Staged --> Committed: git commit Committed --> GitHub: git push - GitHub --> [*]: Success! 🎉 + GitHub --> [*]: সফল! 🎉 note right of Staged - Files ready to save + ফাইলগুলি সংরক্ষণের জন্য প্রস্তুত end note note right of Committed - Snapshot created + স্ন্যাপশট তৈরি হয়েছে end note ``` +> **মনে রাখবেন**: এমনকি অভিজ্ঞ ডেভেলপাররাও কখনো কখনো সঠিক কমান্ড ভুলে যান। এই ওয়ার্কফ্লোটি মাংসপেশির স্মৃতিতে পরিণত হতে সময় লাগে - আপনি দারুণ করছেন! -> **মনে রাখুন**: অভিজ্ঞ ডেভেলপাররাও কখনও কখনও সঠিক কমান্ড ভুলে যায়। এই ওয়ার্কফ্লোটি মাংসপেশীর স্মৃতিতে পরিণত হতে সময় লাগে - আপনি দারুণ করছেন! - -#### আধুনিক Git ওয়ার্কফ্লো +#### আধুনিক Git ওয়ার্কফ্লো -এই আধুনিক অভ্যাসগুলো গ্রহণ করার কথা বিবেচনা করুন: +এই আধুনিক পদ্ধতিগুলো গ্রহণ করার কথা বিবেচনা করুন: -- **Conventional Commits**: `feat:`, `fix:`, `docs:` ইত্যাদি মতো একটি স্ট্যান্ডার্ড কমিট বার্তা ফরম্যাট ব্যবহার করুন। আরও জানুন [conventionalcommits.org](https://www.conventionalcommits.org/) এ। +- **Conventional Commits**: `feat:`, `fix:`, `docs:` ইত্যাদির মতো একটি মানক কমিট বার্তা ফরম্যাট ব্যবহার করুন। আরও জানুন [conventionalcommits.org](https://www.conventionalcommits.org/) এ। - **Atomic commits**: প্রতিটি কমিট একটি একক যৌক্তিক পরিবর্তন উপস্থাপন করে। -- **Frequent commits**: বড়, বিরল কমিটের পরিবর্তে বর্ণনামূলক বার্তাসহ প্রায়ই কমিট করুন। +- **Frequent commits**: বড়, অনিয়মিত কমিটের পরিবর্তে বর্ণনামূলক বার্তাসহ ঘন ঘন কমিট করুন। #### কমিট বার্তা -একটি চমৎকার Git কমিট বিষয়বস্তু এই বাক্যটি সম্পূর্ণ করে: -যদি প্রয়োগ করা হয়, এই কমিট <আপনার বিষয়বস্তু এখানে> করবে। +একটি দুর্দান্ত Git কমিটের বিষয়বস্তু এই বাক্যটি সম্পূর্ণ করে: +যদি প্রয়োগ করা হয়, এই কমিটটি <আপনার বিষয়বস্তু এখানে> করবে। -বিষয়ের জন্য আদেশমূলক, বর্তমান কাল ব্যবহার করুন: "change" না "changed" বা "changes"। -বিষয়ের মতো, শরীরেও (ঐচ্ছিক) আদেশমূলক, বর্তমান কাল ব্যবহার করুন। শরীরটি পরিবর্তনের প্রেরণা অন্তর্ভুক্ত করা উচিত এবং এটি পূর্ববর্তী আচরণের সাথে তুলনা করা উচিত। আপনি `কেন` ব্যাখ্যা করছেন, `কিভাবে` নয়। +বিষয়ের জন্য আদেশমূলক, বর্তমান কাল ব্যবহার করুন: "change" নয় "changed" বা "changes"। +বিষয়ের মতো, শরীরেও (ঐচ্ছিক) আদেশমূলক, বর্তমান কাল ব্যবহার করুন। শরীরটি পরিবর্তনের প্রেরণা অন্তর্ভুক্ত করবে এবং এটি পূর্ববর্তী আচরণের সাথে তুলনা করবে। আপনি `কেন` ব্যাখ্যা করছেন, `কিভাবে` নয়। -✅ কয়েক মিনিট সময় নিয়ে GitHub-এ ঘুরে দেখুন। আপনি কি একটি সত্যিই চমৎকার কমিট বার্তা খুঁজে পেতে পারেন? আপনি কি একটি খুব সংক্ষিপ্ত বার্তা খুঁজে পেতে পারেন? কমিট বার্তায় কোন তথ্য সবচেয়ে গুরুত্বপূর্ণ এবং উপযোগী বলে মনে হয়? +✅ কয়েক মিনিট সময় নিয়ে GitHub-এ ঘুরে দেখুন। আপনি কি একটি সত্যিই দুর্দান্ত কমিট বার্তা খুঁজে পেতে পারেন? আপনি কি একটি খুব সংক্ষিপ্ত বার্তা খুঁজে পেতে পারেন? কমিট বার্তায় কোন তথ্য সবচেয়ে গুরুত্বপূর্ণ এবং উপকারী বলে মনে হয়? ## অন্যদের সাথে কাজ করা (মজার অংশ!) -আপনার টুপি ধরে রাখুন কারণ এটি GitHub-কে একেবারে জাদুকরী করে তোলে! 🪄 আপনি আপনার নিজের কোড পরিচালনা করতে দক্ষ হয়ে উঠেছেন, কিন্তু এখন আমরা আমার একেবারে প্রিয় অংশে ডুব দিচ্ছি – সারা বিশ্বের আশ্চর্যজনক লোকদের সাথে সহযোগিতা করা। +আপনার টুপি ধরে রাখুন কারণ এখানেই GitHub একেবারে জাদুকরী হয়ে ওঠে! 🪄 আপনি আপনার নিজের কোড পরিচালনা করা শিখেছেন, কিন্তু এখন আমরা আমার একেবারে প্রিয় অংশে ডুব দিচ্ছি – সারা বিশ্বের অসাধারণ মানুষের সাথে সহযোগিতা করা। -এটি কল্পনা করুন: আপনি আগামীকাল ঘুম থেকে উঠলেন এবং দেখলেন যে টোকিওর কেউ আপনার কোড উন্নত করেছে যখন আপনি ঘুমাচ্ছিলেন। তারপর বার্লিনের কেউ একটি বাগ ঠিক করলো যা আপনি আটকে ছিলেন। দুপুরের মধ্যে, সাও পাওলোর একজন ডেভেলপার একটি বৈশিষ্ট্য যোগ করেছে যা আপনি কখনও ভাবেননি। এটি বিজ্ঞান কল্পকাহিনী নয় – এটি শুধুমাত্র GitHub মহাবিশ্বে একটি সাধারণ মঙ্গলবার! +এটি কল্পনা করুন: আপনি আগামীকাল ঘুম থেকে উঠে দেখলেন টোকিওর কেউ আপনার কোড উন্নত করেছে। তারপর বার্লিনের কেউ একটি বাগ ঠিক করেছে যা আপনি আটকে ছিলেন। দুপুরের মধ্যে, সাও পাওলোর একজন ডেভেলপার একটি ফিচার যোগ করেছেন যা আপনি কখনো ভাবেননি। এটি বিজ্ঞান কল্পকাহিনী নয় – এটি GitHub মহাবিশ্বে একটি সাধারণ মঙ্গলবার! -যা আমাকে সত্যিই উত্তেজিত করে তা হল আপনি যে সহযোগিতা দক্ষতাগুলো শিখতে যাচ্ছেন? এগুলোই EXACT একই ওয়ার্কফ্লো যা Google, Microsoft এবং আপনার প্রিয় স্টার্টআপের দলগুলো প্রতিদিন ব্যবহার করে। আপনি শুধু একটি দুর্দান্ত টুল শিখছেন না – আপনি সেই গোপন ভাষা শিখছেন যা পুরো সফটওয়্যার বিশ্বকে একসাথে কাজ করতে সক্ষম করে। +আমাকে সত্যিই উত্তেজিত করে যে আপনি যে সহযোগিতার দক্ষতাগুলো শিখতে যাচ্ছেন? এগুলোই সেই সঠিক ওয়ার্কফ্লোগুলো যা Google, Microsoft এবং আপনার প্রিয় স্টার্টআপগুলো প্রতিদিন ব্যবহার করে। আপনি শুধু একটি দুর্দান্ত টুল শিখছেন না – আপনি সেই গোপন ভাষা শিখছেন যা পুরো সফটওয়্যার বিশ্বকে একসাথে কাজ করতে সাহায্য করে। -সত্যিই, যখন আপনি প্রথমবার আপনার প্রথম পুল রিকোয়েস্ট মার্জ করার রাশ অনুভব করবেন, তখন আপনি বুঝতে পারবেন কেন ডেভেলপাররা ওপেন সোর্স নিয়ে এত আবেগপ্রবণ হয়ে ওঠে। এটি বিশ্বের সবচেয়ে বড়, সবচেয়ে সৃজনশীল দল প্রকল্পের অংশ হওয়ার মতো! +সত্যি বলতে, যখন কেউ আপনার প্রথম পুল রিকোয়েস্ট মার্জ করে তখন যে রোমাঞ্চ অনুভব করবেন, তখন বুঝতে পারবেন কেন ডেভেলপাররা ওপেন সোর্স নিয়ে এত আবেগপ্রবণ। এটি বিশ্বের সবচেয়ে বড়, সবচেয়ে সৃজনশীল দলীয় প্রকল্পের অংশ হওয়ার মতো! > ভিডিও দেখুন > @@ -302,245 +373,242 @@ GitHub-এ জিনিসগুলো রাখার প্রধান কা ```mermaid flowchart LR - A[🔍 Find Project] --> B[🍴 Fork Repository] - B --> C[📥 Clone to Local] - C --> D[🌿 Create Branch] - D --> E[✏️ Make Changes] - E --> F[💾 Commit Changes] - F --> G[📤 Push Branch] - G --> H[🔄 Create Pull Request] - H --> I{Maintainer Review} - I -->|✅ Approved| J[🎉 Merge!] - I -->|❓ Changes Requested| K[📝 Make Updates] + A[🔍 প্রকল্প খুঁজুন] --> B[🍴 রিপোজিটরি ফর্ক করুন] + B --> C[📥 লোকাল-এ ক্লোন করুন] + C --> D[🌿 শাখা তৈরি করুন] + D --> E[✏️ পরিবর্তন করুন] + E --> F[💾 পরিবর্তন কমিট করুন] + F --> G[📤 শাখা পুশ করুন] + G --> H[🔄 পুল রিকোয়েস্ট তৈরি করুন] + H --> I{রক্ষণাবেক্ষক পর্যালোচনা} + I -->|✅ অনুমোদিত| J[🎉 মার্জ করুন!] + I -->|❓ পরিবর্তন অনুরোধ| K[📝 আপডেট করুন] K --> F - J --> L[🧹 Clean Up Branches] + J --> L[🧹 শাখাগুলি পরিষ্কার করুন] style A fill:#e3f2fd style J fill:#e8f5e8 style L fill:#fff3e0 ``` +আপনার রিপোজিটরিতে, `Insights > Community`-এ যান এবং দেখুন আপনার প্রকল্পটি প্রস্তাবিত কমিউনিটি স্ট্যান্ডার্ডগুলোর সাথে কেমন তুলনা করে। -আপনার রিপোজিটরিতে, `Insights > Community`-এ নেভিগেট করুন এবং দেখুন আপনার প্রকল্পটি সুপারিশকৃত কমিউনিটি স্ট্যান্ডার্ডের সাথে কেমন তুলনা করে। +আপনার রিপোজিটরিকে পেশাদার এবং স্বাগতপূর্ণ দেখাতে চান? আপনার রিপোজিটরিতে যান এবং `Insights > Community`-এ ক্লিক করুন। এই চমৎকার ফিচারটি দেখায় আপনার প্রকল্পটি GitHub কমিউনিটির "ভালো রিপোজিটরি প্র্যাকটিস" হিসেবে বিবেচিত মানগুলোর সাথে কেমন তুলনা করে। -আপনার রিপোজিটরিকে পেশাদার এবং স্বাগতপূর্ণ দেখাতে চান? আপনার রিপোজিটরিতে যান এবং `Insights > Community`-এ ক্লিক করুন। এই চমৎকার বৈশিষ্ট্যটি দেখায় আপনার প্রকল্পটি GitHub কমিউনিটি "ভালো রিপোজিটরি অভ্যাস" হিসেবে যা বিবেচনা করে তার সাথে কেমন তুলনা করে। - -> 🎯 **আপনার প্রকল্পকে উজ্জ্বল করুন**: একটি ভালোভাবে সংগঠিত রিপোজিটরি এবং ভালো ডকুমেন্টেশন একটি পরিষ্কার, স্বাগতপূর্ণ দোকানের মতো। এটি মানুষকে বলে যে আপনি আপনার কাজের যত্ন নেন এবং অন্যদের অবদান রাখতে উৎসাহিত করে! +> 🎯 **আপনার প্রকল্পকে উজ্জ্বল করুন**: একটি ভালোভাবে সংগঠিত রিপোজিটরি এবং ভালো ডকুমেন্টেশন একটি পরিষ্কার, স্বাগতপূর্ণ দোকানের মতো। এটি মানুষকে বলে যে আপনি আপনার কাজের যত্ন নেন এবং অন্যদের এতে অবদান রাখতে উৎসাহিত করে! **একটি রিপোজিটরিকে অসাধারণ করে তোলে:** | কি যোগ করবেন | কেন এটি গুরুত্বপূর্ণ | এটি আপনার জন্য কি করে | |-------------|-------------------|---------------------| -| **Description** | প্রথম ইমপ্রেশন গুরুত্বপূর্ণ! | মানুষ তৎক্ষণাৎ জানে আপনার প্রকল্পটি কি করে | -| **README** | আপনার প্রকল্পের সামনের পৃষ্ঠা | নতুন দর্শকদের জন্য একটি বন্ধুত্বপূর্ণ ট্যুর গাইডের মতো | -| **Contributing Guidelines** | দেখায় আপনি সাহায্যকে স্বাগত জানাচ্ছেন | মানুষ জানে ঠিক কিভাবে তারা আপনাকে সাহায্য করতে পারে | -| **Code of Conduct** | একটি বন্ধুত্বপূর্ণ পরিবেশ তৈরি করে | সবাই অংশগ্রহণ করতে স্বাগত বোধ করে | -| **License** | আইনি স্পষ্টতা | অন্যরা জানে কিভাবে তারা আপনার কোড ব্যবহার করতে পারে | -| **Security Policy** | দেখায় আপনি দায়িত্বশীল | পেশাদার অভ্যাস প্রদর্শন করে | +| **বর্ণনা** | প্রথম ইমপ্রেশন গুরুত্বপূর্ণ! | মানুষ সঙ্গে সঙ্গে জানে আপনার প্রকল্পটি কি করে | +| **README** | আপনার প্রকল্পের সামনের পৃষ্ঠা | নতুন দর্শকদের জন্য একটি বন্ধুত্বপূর্ণ গাইড | +| **অবদান নির্দেশিকা** | দেখায় আপনি সাহায্য স্বাগত জানাচ্ছেন | মানুষ জানে কিভাবে তারা আপনাকে সাহায্য করতে পারে | +| **আচরণবিধি** | একটি বন্ধুত্বপূর্ণ স্থান তৈরি করে | সবাই অংশগ্রহণ করতে স্বাগত বোধ করে | +| **লাইসেন্স** | আইনি স্পষ্টতা | অন্যরা জানে কিভাবে তারা আপনার কোড ব্যবহার করতে পারে | +| **নিরাপত্তা নীতি** | দেখায় আপনি দায়িত্বশীল | পেশাদার অনুশীলন প্রদর্শন করে | -> 💡 **প্রো টিপ**: GitHub এই ফাইলগুলোর জন্য টেমপ্লেট প্রদান করে। একটি নতুন রিপোজিটরি তৈরি করার সময়, এই ফাইলগুলো স্বয়ংক্রিয়ভাবে তৈরি করতে বক্সগুলো চেক করুন। +> 💡 **প্রো টিপ**: GitHub এই ফাইলগুলোর জন্য টেমপ্লেট প্রদান করে। একটি নতুন রিপোজিটরি তৈরি করার সময়, এই ফাইলগুলো স্বয়ংক্রিয়ভাবে তৈরি করতে বক্সগুলো চেক করুন। -**আধুনিক GitHub বৈশিষ্ট্যগুলো অন্বেষণ করুন:** +**আধুনিক GitHub ফিচারগুলো অন্বেষণ করুন:** -🤖 **অটোমেশন এবং CI/CD:** -- **GitHub Actions** স্বয়ংক্রিয় টেস্টিং এবং ডিপ্লয়মেন্টের জন্য -- **Dependabot** স্বয়ংক্রিয় ডিপেনডেন্সি আপডেটের জন্য +🤖 **স্বয়ংক্রিয়তা & CI/CD:** +- **GitHub Actions** স্বয়ংক্রিয় টেস্টিং এবং ডিপ্লয়মেন্টের জন্য +- **Dependabot** স্বয়ংক্রিয় ডিপেনডেন্সি আপডেটের জন্য -💬 **কমিউনিটি এবং প্রকল্প ব্যবস্থাপনা:** -- **GitHub Discussions** সমস্যা ছাড়িয়ে কমিউনিটি কথোপকথনের জন্য +💬 **কমিউনিটি & প্রকল্প ব্যবস্থাপনা:** +- **GitHub Discussions** সমস্যা ছাড়াও কমিউনিটি কথোপকথনের জন্য - **GitHub Projects** কানবান-স্টাইল প্রকল্প ব্যবস্থাপনার জন্য -- **Branch protection rules** কোডের গুণমানের মান বজায় রাখতে +- **Branch protection rules** কোডের মান বজায় রাখতে -এই সমস্ত রিসোর্স নতুন টিম সদস্যদের অনবোর্ডিংয়ে উপকার করবে। এবং এগুলো সাধারণত সেই ধরনের জিনিস যা নতুন কন্ট্রিবিউটররা আপনার কোড দেখার আগে দেখে, এটি খুঁজে বের করতে যে আপনার প্রকল্পটি তাদের সময় ব্যয় করার জন্য সঠিক জায়গা কিনা। +এই সমস্ত রিসোর্স নতুন টিম সদস্যদের অনবোর্ডিংয়ে উপকার করবে। এবং এগুলোই সাধারণত নতুন অবদানকারীরা আপনার কোড দেখার আগে দেখে, যাতে তারা বুঝতে পারে আপনার প্রকল্প তাদের সময় ব্যয় করার জন্য সঠিক জায়গা কিনা। -✅ README ফাইলগুলো, যদিও প্রস্তুত করতে সময় লাগে, প্রায়ই ব্যস্ত মেইনটেইনারদের দ্বারা অবহেলিত হয়। আপনি কি একটি বিশেষভাবে বর্ণনামূলক উদাহরণ খুঁজে পেতে পারেন? নোট: কিছু [ভালো README তৈরি করতে সাহায্যকারী টুল](https://www.makeareadme.com/) রয়েছে যা আপনি চেষ্টা করতে পারেন। +✅ README ফাইলগুলো, যদিও প্রস্তুত করতে সময় লাগে, ব্যস্ত মেইনটেইনারদের দ্বারা প্রায়ই অবহেলিত হয়। আপনি কি একটি বিশেষভাবে বর্ণনামূলক উদাহরণ খুঁজে পেতে পারেন? নোট: কিছু [ভালো README তৈরি করার টুল](https://www.makeareadme.com/) আছে যা আপনি চেষ্টা করতে পারেন। -### টাস্ক: কিছু কোড মার্জ করুন +### কাজ: কিছু কোড মার্জ করুন -কন্ট্রিবিউটিং ডকস মানুষকে প্রকল্পে অবদান রাখতে সাহায্য করে। এটি ব্যাখ্যা করে আপনি কোন ধরনের অবদান খুঁজছেন এবং প্রক্রিয়াটি কিভাবে কাজ করে। কন্ট্রিবিউটরদের আপনার GitHub রিপোজিটরিতে অবদান রাখতে সক্ষম হতে একটি সিরিজ ধাপের মধ্য দিয়ে যেতে হবে: +অবদান নির্দেশিকা মানুষকে প্রকল্পে অবদান রাখতে সাহায্য করে। এটি ব্যাখ্যা করে আপনি কোন ধরনের অবদান খুঁজছেন এবং প্রক্রিয়াটি কিভাবে কাজ করে। অবদানকারীদের আপনার GitHub রিপোজিটরিতে অবদান রাখতে একটি ধাপের সিরিজের মধ্য দিয়ে যেতে হবে: -1. **আপনার রিপোজিটরি ফর্ক করা**। আপনি সম্ভবত চাইবেন মানুষ আপনার প্রকল্পটি _fork_ করুক। ফর্ক করা মানে তাদের GitHub প্রোফাইলে আপনার রিপোজিটরির একটি প্রতিলিপি তৈরি করা। -1. **ক্লোন**। সেখান থেকে তারা প্রকল্পটি তাদের স্থানীয় মেশিনে ক্লোন করবে। -1. **একটি ব্রাঞ্চ তৈরি করুন**। আপনি চাইবেন তারা তাদের কাজের জন্য একটি _branch_ তৈরি করুক। -1. **তাদের পরিবর্তন একটি এলাকায় কেন্দ্রীভূত করুন**। কন্ট্রিবিউটরদের একবারে একটি জিনিসে তাদের অবদান কেন্দ্রীভূত করতে বলুন - এভাবে তাদের কাজ _merge_ করার সম্ভাবনা বেশি। কল্পনা করুন তারা একটি বাগ ঠিক করে, একটি নতুন বৈশিষ্ট্য যোগ করে, এবং কয়েকটি টেস্ট আপডেট করে - যদি আপনি ৩টির মধ্যে ২টি বা ১টি পরিবর্তন বাস্তবায়ন করতে চান বা পারেন? +1. **আপনার রিপোজিটরি ফর্ক করা**। আপনি সম্ভবত মানুষকে আপনার প্রকল্প _ফর্ক_ করতে চাইবেন। ফর্ক করা মানে তাদের GitHub প্রোফাইলে আপনার রিপোজিটরির একটি প্রতিলিপি তৈরি করা। +1. **ক্লোন**। সেখান থেকে তারা প্রকল্পটি তাদের স্থানীয় মেশিনে ক্লোন করবে। +1. **একটি ব্রাঞ্চ তৈরি করুন**। আপনি তাদের তাদের কাজের জন্য একটি _ব্রাঞ্চ_ তৈরি করতে বলতে চাইবেন। +1. **তাদের পরিবর্তন একটি নির্দিষ্ট এলাকায় ফোকাস করুন**। অবদানকারীদের একবারে একটি জিনিসে তাদের অবদান কেন্দ্রীভূত করতে বলুন - এভাবে তাদের কাজ _মার্জ_ করার সম্ভাবনা বেশি। কল্পনা করুন তারা একটি বাগ ঠিক করে, একটি নতুন ফিচার যোগ করে, এবং কয়েকটি টেস্ট আপডেট করে - যদি আপনি ৩টির মধ্যে ২টি বা ১টি পরিবর্তন বাস্তবায়ন করতে চান বা পারেন? -✅ এমন একটি পরিস্থিতি কল্পনা করুন যেখানে ব্রাঞ্চগুলো ভালো কোড লিখতে এবং শিপ করতে বিশেষভাবে গুরুত্বপূর্ণ। আপনি কোন ব্যবহার কেসগুলো ভাবতে পারেন? +✅ এমন একটি পরিস্থিতি কল্পনা করুন যেখানে ব্রাঞ্চগুলো ভালো কোড লেখার এবং শিপ করার জন্য বিশেষভাবে গুরুত্বপূর্ণ। আপনি কি ব্যবহার কেস কল্পনা করতে পারেন? -> নোট, আপনি যে পরিবর্তন দেখতে চান তা হোন এবং আপনার নিজের কাজের জন্য ব্রাঞ্চ তৈরি করুন। আপনি যে কমিটগুলো করবেন তা আপনি বর্তমানে যে ব্রাঞ্চে "চেক আউট" করেছেন তাতে করা হবে। `git status` ব্যবহার করে দেখুন কোন ব্রাঞ্চটি সেটি। +> নোট, আপনি যে পরিবর্তন দেখতে চান তা নিজেই হোন, এবং আপনার নিজের কাজের জন্য ব্রাঞ্চ তৈরি করুন। আপনি যে কোনো কমিট করবেন তা সেই ব্রাঞ্চে করা হবে যেখানে আপনি বর্তমানে "চেক আউট" করেছেন। `git status` ব্যবহার করে দেখুন কোন ব্রাঞ্চে আছেন। -চলুন একটি কন্ট্রিবিউটর ওয়ার্কফ্লো দেখে নিই। ধরে নিন কন্ট্রিবিউটর ইতিমধ্যে রিপোজিটরি _forked_ এবং _cloned_ করেছে, তাই তাদের স্থানীয় মেশিনে কাজ করার জন্য একটি Git রিপো প্রস্তুত রয়েছে: +চলুন একটি অবদানকারীর ওয়ার্কফ্লো দেখে নিই। ধরে নিন অবদানকারী ইতিমধ্যে রিপোজিটরি _ফর্ক_ এবং _ক্লোন_ করেছেন যাতে তাদের স্থানীয় মেশিনে একটি Git রিপো কাজ করার জন্য প্রস্তুত থাকে: -1. **একটি ব্রাঞ্চ তৈরি করুন**। `git branch` কমান্ড ব্যবহার করে একটি ব্রাঞ্চ তৈরি করুন যা তারা অবদান রাখতে চায় এমন পরিবর্তনগুলো ধারণ করবে: +1. **একটি ব্রাঞ্চ তৈরি করুন**। `git branch` কমান্ড ব্যবহার করে একটি ব্রাঞ্চ তৈরি করুন যা তারা অবদান রাখতে চায় এমন পরিবর্তনগুলো ধারণ করবে: ```bash git branch [branch-name] ``` -> 💡 **আধুনিক পদ্ধতি**: আপনি একটি কমান্ডে নতুন ব্রাঞ্চ তৈরি এবং স্যুইচ করতে পারেন: + > 💡 **আধুনিক পদ্ধতি**: আপনি এক কমান্ডে নতুন ব্রাঞ্চ তৈরি এবং স্যুইচ করতে পারেন: ```bash git switch -c [branch-name] ``` -1. **কাজের ব্রাঞ্চে স্যুইচ করুন**। নির্দিষ্ট ব্রাঞ্চে স্যুইচ করুন এবং `git switch` দিয়ে কাজের ডিরেক্টরি আপডেট করুন: +1. **কাজের ব্রাঞ্চে স্যুইচ করুন**। নির্দিষ্ট ব্রাঞ্চে স্যুইচ করুন এবং `git switch` দিয়ে ওয়ার্কিং ডিরেক্টরি আপডেট করুন: ```bash git switch [branch-name] ``` -> 💡 **আধুনিক নোট**: ব্রাঞ্চ পরিবর্তন করার সময় `git switch` হল `git checkout` এর আধুনিক প্রতিস্থাপন। এটি আরও পরিষ্কার এবং শিক্ষানবিশদের জন্য নিরাপদ। + > 💡 **আধুনিক নোট**: ব্রাঞ্চ পরিবর্তনের সময় `git switch` হল `git checkout` এর আধুনিক বিকল্প। এটি স্পষ্ট এবং শিক্ষানবিসদের জন্য নিরাপদ। -1. **কাজ করুন**। এই পর্যায়ে আপনি আপনার পরিবর্তনগুলো যোগ করতে চান। Git-কে এটি সম্পর্কে জানাতে ভুলবেন না নিম্নলিখিত কমান্ডগুলো দিয়ে: +1. **কাজ করুন**। এই পর্যায়ে আপনি আপনার পরিবর্তন যোগ করতে চান। Git-কে এটি সম্পর্কে জানাতে ভুলবেন না নিম্নলিখিত কমান্ডগুলো দিয়ে: ```bash git add . git commit -m "my changes" ``` -> ⚠️ **কমিট বার্তার গুণমান**: নিশ্চিত করুন যে আপনি আপনার কমিটকে একটি ভালো নাম দেন, আপনার এবং আপনি যে রিপোজিটরির মেইনটেইনারকে সাহায্য করছেন তার জন্য। আপনি কি পরিবর্তন করেছেন তা নির্দিষ্ট করুন! + > ⚠️ **কমিট বার্তার গুণমান**: নিশ্চিত করুন যে আপনি আপনার কমিটকে একটি ভালো নাম দিয়েছেন, আপনার এবং যেই রিপোতে আপনি সাহায্য করছেন তার মেইনটেইনারের জন্য। আপনি কি পরিবর্তন করেছেন তা নির্দিষ্ট করুন! -1. **আপনার কাজ `main` ব্রাঞ্চের সাথে একত্রিত করুন**। এক পর্যায়ে আপনি কাজ শেষ করেছেন এবং আপনি আপনার কাজ `main` ব্রাঞ্চের সাথে একত্রিত করতে চান। এদিকে `main` ব্রাঞ্চ পরিবর্তিত হতে পারে, তাই নিশ্চিত করুন যে আপনি প্রথমে এটি সর্বশেষে আপডেট করেছেন নিম্নলিখিত কমান্ডগুলো দিয়ে: +1. **আপনার কাজ `main` ব্রাঞ্চের সাথে একত্রিত করুন**। কোনো এক পর্যায়ে আপনি কাজ শেষ করেছেন এবং আপনি আপনার কাজ `main` ব্রাঞ্চের সাথে একত্রিত করতে চান। এদিকে `main` ব্রাঞ্চ পরিবর্তিত হতে পারে, তাই নিশ্চিত করুন যে আপনি প্রথমে এটি সর্বশেষে আপডেট করেছেন নিম্নলিখিত কমান্ডগুলো দিয়ে: ```bash git switch main git pull ``` -এই পর্যায়ে আপনি নিশ্চিত করতে চান যে কোনো _conflicts_, যেখানে Git সহজে পরিবর্তনগুলো _combine_ করতে পারে না, আপনার কাজের ব্রাঞ্চে ঘটে। তাই নিম্নলিখিত কমান্ডগুলো চালান: + এই পর্যায়ে আপনি নিশ্চিত করতে চান যে কোনো _কনফ্লিক্ট_, যেখানে Git সহজে পরিবর্তনগুলো _একত্রিত_ করতে পারে না, আপনার কাজের ব্রাঞ্চে ঘটে। তাই নিম্নলিখিত কমান্ডগুলো চালান: ```bash git switch [branch_name] git merge main ``` -`git merge main` কমান্ডটি `main` থেকে আপনার ব্রাঞ্চে সমস্ত পরিবর্তন নিয়ে আসবে। আশা করি আপনি শুধু চালিয়ে যেতে পারবেন। যদি না পারেন, তাহলে VS Code আপনাকে দেখাবে কোথায় Git _confused_ এবং আপনি প্রভাবিত ফাইলগুলো পরিবর্তন করবেন যাতে কোন বিষয়বস্তু সবচেয়ে সঠিক তা বলা যায়। + `git merge main` কমান্ডটি `main` থেকে সমস্ত পরিবর্তন আপনার ব্রাঞ্চে নিয়ে আসবে। আশা করি আপনি সহজেই চালিয়ে যেতে পারবেন। যদি না পারেন, VS Code আপনাকে দেখাবে যেখানে Git _বিভ্রান্ত_ এবং আপনি সংশ্লিষ্ট ফাইলগুলো পরিবর্তন করে সঠিক কন্টেন্টটি উল্লেখ করবেন। -💡 **আধুনিক বিকল্প**: একটি পরিষ্কার ইতিহাসের জন্য `git rebase` ব্যবহার করার কথা বিবেচনা করুন: + 💡 **আধুনিক বিকল্প**: একটি পরিষ্কার ইতিহাসের জন্য `git rebase` ব্যবহার করার কথা বিবেচনা করুন: ```bash git rebase main ``` - এটি আপনার কমিটগুলোকে সর্বশেষ main ব্রাঞ্চের উপরে পুনরায় চালায়, একটি রৈখিক ইতিহাস তৈরি করে। + এটি আপনার কমিটগুলোকে সর্বশেষ main ব্রাঞ্চের উপরে পুনরায় চালায়, একটি লিনিয়ার ইতিহাস তৈরি করে। -1. **আপনার কাজ GitHub-এ পাঠান**। আপনার কাজ GitHub-এ পাঠানো মানে দুটি জিনিস। আপনার ব্রাঞ্চটি আপনার রিপোতে পুশ করা এবং তারপর একটি PR, Pull Request খুলুন। +1. **আপনার কাজ GitHub-এ পাঠান**। আপনার কাজ GitHub-এ পাঠানো মানে দুটি জিনিস। আপনার ব্রাঞ্চটি আপনার রিপোতে পুশ করা এবং তারপর একটি PR, Pull Request খোলা। ```bash git push --set-upstream origin [branch-name] ``` -উপরের কমান্ডটি আপনার forked রিপোতে ব্রাঞ্চ তৈরি করে। + উপরের কমান্ডটি আপনার ফর্ক করা রিপোতে ব্রাঞ্চ তৈরি করে। ### 🤝 **সহযোগিতা দক্ষতা পরীক্ষা: অন্যদের সাথে কাজ করতে প্রস্তুত?** -**চলুন দেখি আপনি সহযোগিতা সম্পর্কে কেমন অনুভব করছেন:** -- ফর্কিং এবং পুল রিকোয়েস্টের ধারণা এখন কি আপনার কাছে পরিষ্কার? -- ব্রাঞ্চ নিয়ে কাজ করার বিষয়ে কোন একটি জিনিস আপনি আরও অনুশীলন করতে চান? -- অন্য কারো প্রকল্পে অবদান রাখতে আপনি কতটা স্বাচ্ছন্দ্যবোধ করছেন? +**দেখি আপনি সহযোগিতা সম্পর্কে কেমন অনুভব করছেন:** +- ফর্কিং এবং পুল রিকোয়েস্টের ধারণা কি এখন আপনার কাছে পরিষ্কার? +- ব্রাঞ্চ নিয়ে কাজ করার কোন একটি বিষয় আপনি আরও অনুশীলন করতে চান? +- অন্য কারো প্রকল্পে অবদান রাখতে আপনি কতটা স্বাচ্ছন্দ্য বোধ করছেন? ```mermaid mindmap - root((Git Collaboration)) + root((গিট সহযোগিতা)) Branching - Feature branches - Bug fix branches - Experimental work + ফিচার ব্রাঞ্চ + বাগ ফিক্স ব্রাঞ্চ + পরীক্ষামূলক কাজ Pull Requests - Code review - Discussion - Testing + কোড রিভিউ + আলোচনা + পরীক্ষা Best Practices - Clear commit messages - Small focused changes - Good documentation + পরিষ্কার কমিট বার্তা + ছোট ফোকাসড পরিবর্তন + ভালো ডকুমেন্টেশন ``` +> **আত্মবিশ্বাস বৃদ্ধিকারক**: আপনি যেই ডেভেলপারকে প্রশংসা করেন, তিনিও একসময় তার প্রথম পুল রিকোয়েস্ট নিয়ে নার্ভাস ছিলেন। GitHub কমিউনিটি নতুনদের জন্য অত্যন্ত স্বাগতপূর্ণ! -> **আত্মবিশ্বাস বাড়ানোর জন্য**: আপনি যে প্রতিটি ডেভেলপারকে প্রশংসা করেন তিনি একবার তার প্রথম পুল রিকোয়েস্ট নিয়ে নার্ভাস ছিলেন। GitHub কমিউনিটি নতুনদের জন্য অত্যন্ত স্বাগতপূর্ণ! - -1. **একটি PR খুলুন**। পরবর্তী, আপনি একটি PR খুলতে চান। আপনি এটি GitHub-এ forked রিপোতে নেভিগেট করে করেন। আপনি GitHub-এ একটি ইঙ্গিত দেখতে পাবেন যেখানে এটি জিজ্ঞাসা করে আপনি কি একটি নতুন PR তৈরি করতে চান, আপনি এটি ক্লিক করেন এবং আপনাকে একটি ইন্টারফেসে নিয়ে যাওয়া হয় যেখানে আপনি কমিট বার্তা শিরোনাম পরিবর্তন করতে পারেন, এটিকে আরও উপযুক্ত বর্ণনা দিতে পারেন। এখন আপনি যে রিপোজিটরিটি fork করেছেন তার মেইনটেইনার এই PRটি দেখবেন এবং _আঙ্গুল ক্রস করে_ তারা এটি প্রশংসা করবে এবং আপনার PRটি _merge_ করবে। আপনি এখন একজন কন্ট্রিবিউটর, বাহ :) +1. **একটি PR খুলুন**। পরবর্তীতে, আপনি একটি PR খুলতে চান। আপনি এটি GitHub-এ ফর্ক করা রিপোতে নেভিগেট করে করবেন। GitHub-এ আপনি একটি ইঙ্গিত দেখতে পাবেন যেখানে এটি জিজ্ঞাসা করে আপনি একটি নতুন PR তৈরি করতে চান কিনা, আপনি এটি ক্লিক করবেন এবং একটি ইন্টারফেসে নিয়ে যাওয়া হবে যেখানে আপনি কমিট বার্তার শিরোনাম পরিবর্তন করতে পারবেন, একটি আরও উপযুক্ত বিবরণ দিতে পারবেন। এখন আপনি যে রিপোটি ফর্ক করেছেন তার মেইনটেইনার এটি দেখবেন এবং _আঙ্গুল ক্রস_ তারা আপনার PR প্রশংসা করবেন এবং _মার্জ_ করবেন। আপনি এখন একজন অবদানকারী, ইয়াহ :) -💡 **আধুনিক টিপ**: আপনি GitHub CLI ব্যবহার করে PR তৈরি করতে পারেন: + 💡 **আধুনিক টিপ**: আপনি GitHub CLI ব্যবহার করেও PR তৈরি করতে পারেন: ```bash gh pr create --title "Your PR title" --body "Description of changes" ``` -🔧 **PR-এর জন্য সেরা অনুশীলন**: -- "Fixes #123" এর মতো কীওয়ার্ড ব্যবহার করে সম্পর্কিত সমস্যাগুলোর লিঙ্ক দিন -- UI পরিবর্তনের জন্য স্ক্রিনশট যোগ করুন -- নির্দিষ্ট রিভিউয়ারদের অনুরোধ করুন -- কাজ চলমান থাকলে ড্রাফট PR ব্যবহার করুন -- রিভিউ অনুরোধ করার আগে নিশ্চিত করুন যে সমস্ত CI চেক পাস হয়েছে -1. **পরিষ্কার করুন**। একটি PR সফলভাবে মার্জ করার পর এটি পরিষ্কার করা ভালো অভ্যাস হিসেবে বিবেচিত হয়। আপনাকে আপনার স্থানীয় শাখা এবং GitHub-এ পুশ করা শাখা উভয়ই পরিষ্কার করতে হবে। প্রথমে নিচের কমান্ড দিয়ে স্থানীয়ভাবে এটি মুছে ফেলুন: + 🔧 **PR-এর জন্য সেরা অনুশীলন**: + - "Fixes #123" এর মতো কীওয়ার্ড ব্যবহার করে সংশ্লিষ্ট সমস্যাগুলোর সাথে লিঙ্ক করুন + - UI পরিবর্তনের জন্য স্ক্রিনশট যোগ করুন + - নির্দিষ্ট রিভিউয়ারদের অনুরোধ করুন + - কাজ চলমান থাকলে ড্রাফট PR ব্যবহার করুন + - রিভিউ অনুরোধ করার আগে নিশ্চিত করুন যে সমস্ত CI চেক পাস করেছে +1. **পরিষ্কার করা**। একটি PR সফলভাবে মার্জ করার পর এটি পরিষ্কার করা ভালো অভ্যাস হিসেবে বিবেচিত হয়। আপনাকে আপনার স্থানীয় ব্রাঞ্চ এবং GitHub-এ পুশ করা ব্রাঞ্চ উভয়ই পরিষ্কার করতে হবে। প্রথমে নিচের কমান্ডটি ব্যবহার করে এটি স্থানীয়ভাবে মুছে ফেলুন: ```bash git branch -d [branch-name] ``` - এরপর আপনার fork করা রিপোজিটরির GitHub পেজে যান এবং আপনি যে রিমোট শাখা পুশ করেছেন সেটি সরিয়ে ফেলুন। + এরপর আপনার ফর্ক করা রিপোর GitHub পেজে যান এবং আপনি যে রিমোট ব্রাঞ্চটি পুশ করেছিলেন সেটি সরিয়ে ফেলুন। -`Pull request` শব্দটি কিছুটা অদ্ভুত শোনাতে পারে কারণ আপনি প্রকল্পে আপনার পরিবর্তনগুলি পুশ করতে চান। তবে প্রকল্পের মালিক বা মূল দলকে প্রকল্পের "মেইন" শাখার সাথে এটি মার্জ করার আগে আপনার পরিবর্তনগুলি বিবেচনা করতে হবে, তাই আপনি প্রকৃতপক্ষে একটি পরিবর্তনের সিদ্ধান্তের জন্য অনুরোধ করছেন। +`Pull request` শব্দটি একটু মজার শোনাতে পারে কারণ প্রকৃতপক্ষে আপনি আপনার পরিবর্তনগুলো প্রকল্পে পুশ করতে চান। কিন্তু মেইনটেইনার (প্রকল্পের মালিক) বা মূল টিমকে আপনার পরিবর্তনগুলো বিবেচনা করতে হবে এটি প্রকল্পের "মেইন" ব্রাঞ্চে মার্জ করার আগে, তাই আপনি মূলত মেইনটেইনারের কাছ থেকে একটি পরিবর্তনের সিদ্ধান্তের অনুরোধ করছেন। -একটি pull request হলো এমন একটি জায়গা যেখানে আপনি একটি শাখায় প্রবর্তিত পার্থক্যগুলি পর্যালোচনা, মন্তব্য, একীভূত টেস্ট এবং আরও অনেক কিছু নিয়ে আলোচনা করতে পারেন। একটি ভালো pull request প্রায় একই নিয়ম অনুসরণ করে যা একটি commit বার্তার ক্ষেত্রে প্রযোজ্য। আপনি ইস্যু ট্র্যাকার-এ একটি ইস্যুর রেফারেন্স যোগ করতে পারেন, উদাহরণস্বরূপ যখন আপনার কাজ একটি ইস্যু সমাধান করে। এটি `#` এবং আপনার ইস্যুর নম্বর ব্যবহার করে করা হয়। উদাহরণস্বরূপ `#97`। +একটি pull request হলো এমন একটি জায়গা যেখানে একটি ব্রাঞ্চে প্রবর্তিত পার্থক্যগুলো পর্যালোচনা, মন্তব্য, ইন্টিগ্রেটেড টেস্ট এবং আরও অনেক কিছু নিয়ে আলোচনা করা হয়। একটি ভালো pull request প্রায় একই নিয়ম অনুসরণ করে যা একটি কমিট মেসেজ করে। আপনি একটি ইস্যু ট্র্যাকার-এ একটি ইস্যুর রেফারেন্স যোগ করতে পারেন, উদাহরণস্বরূপ যখন আপনার কাজ একটি ইস্যু সমাধান করে। এটি `#` এবং আপনার ইস্যুর নম্বর ব্যবহার করে করা হয়। উদাহরণস্বরূপ `#97`। -🤞আশা করি সব চেক পাস করবে এবং প্রকল্পের মালিক(রা) আপনার পরিবর্তনগুলি প্রকল্পে মার্জ করবে🤞 +🤞আশা করি সব চেক পাস করবে এবং প্রকল্পের মালিক(রা) আপনার পরিবর্তনগুলো প্রকল্পে মার্জ করবে🤞 -আপনার বর্তমান স্থানীয় কাজের শাখাকে GitHub-এর সংশ্লিষ্ট রিমোট শাখার সমস্ত নতুন commit দিয়ে আপডেট করুন: +আপনার বর্তমান স্থানীয় ওয়ার্কিং ব্রাঞ্চটি GitHub-এ সংশ্লিষ্ট রিমোট ব্রাঞ্চ থেকে সমস্ত নতুন কমিট দিয়ে আপডেট করুন: `git pull` -## ওপেন সোর্সে অবদান রাখা (আপনার প্রভাব তৈরি করার সুযোগ!) +## ওপেন সোর্সে অবদান রাখা (আপনার প্রভাব তৈরির সুযোগ!) -আপনি এমন কিছু করার জন্য প্রস্তুত যা আপনার মনকে পুরোপুরি বিস্মিত করবে? 🤯 আসুন ওপেন সোর্স প্রকল্পে অবদান রাখার কথা বলি – এবং আমি এটি আপনার সাথে শেয়ার করার কথা ভাবলেই শিহরিত হই! +আপনি কি এমন কিছু করার জন্য প্রস্তুত যা আপনার মনকে পুরোপুরি উড়িয়ে দেবে? 🤯 চলুন ওপেন সোর্স প্রকল্পে অবদান রাখার কথা বলি – এবং আমি এটি আপনার সাথে শেয়ার করার কথা ভাবলেই শিহরিত হই! -এটি এমন কিছু অসাধারণ কিছুর অংশ হওয়ার আপনার সুযোগ। কল্পনা করুন এমন টুল উন্নত করা যা প্রতিদিন লক্ষ লক্ষ ডেভেলপার ব্যবহার করেন, অথবা এমন একটি অ্যাপে বাগ ঠিক করা যা আপনার বন্ধুরা পছন্দ করে। এটি শুধুমাত্র একটি স্বপ্ন নয় – এটি ওপেন সোর্স অবদান রাখার মূল বিষয়! +এটি এমন কিছুতে অংশ নেওয়ার আপনার সুযোগ যা সত্যিই অসাধারণ। কল্পনা করুন এমন টুল উন্নত করা যা প্রতিদিন লক্ষ লক্ষ ডেভেলপার ব্যবহার করেন, অথবা এমন একটি অ্যাপে বাগ ঠিক করা যা আপনার বন্ধুরা পছন্দ করে। এটি শুধুমাত্র একটি স্বপ্ন নয় – এটাই ওপেন সোর্স অবদানের মূল বিষয়! -এটি ভাবলেই আমার রোমাঞ্চিত লাগে: আপনি যে প্রতিটি টুল শিখছেন – আপনার কোড এডিটর, আমরা যে ফ্রেমওয়ার্কগুলি অন্বেষণ করব, এমনকি আপনি যে ব্রাউজারে এটি পড়ছেন – এটি শুরু হয়েছিল এমন একজনের মাধ্যমে যিনি ঠিক আপনার মতো তাদের প্রথম অবদান রেখেছিলেন। সেই অসাধারণ ডেভেলপার যিনি আপনার প্রিয় VS Code এক্সটেনশন তৈরি করেছেন? তারা একবার একজন শিক্ষানবিশ ছিলেন, "create pull request" ক্লিক করার সময় তাদের হাত কাঁপছিল, ঠিক যেমন আপনি করতে যাচ্ছেন। +এটি ভাবলেই আমার গায়ে কাঁটা দেয়: প্রতিটি টুল যা আপনি শিখছেন – আপনার কোড এডিটর, আমরা যে ফ্রেমওয়ার্কগুলো অন্বেষণ করব, এমনকি ব্রাউজার যেখানে আপনি এটি পড়ছেন – এটি এমন কারো দ্বারা শুরু হয়েছিল যিনি ঠিক আপনার মতো তাদের প্রথম অবদান রেখেছিলেন। সেই উজ্জ্বল ডেভেলপার যিনি আপনার প্রিয় VS Code এক্সটেনশন তৈরি করেছেন? একসময় তারা একজন শিক্ষানবিস ছিলেন, "create pull request" ক্লিক করার সময় তাদের হাত কাঁপছিল, যেমনটি আপনি করতে যাচ্ছেন। -এবং সবচেয়ে সুন্দর অংশটি হলো: ওপেন সোর্স কমিউনিটি ইন্টারনেটের সবচেয়ে বড় গ্রুপ হাগের মতো। বেশিরভাগ প্রকল্প নতুনদের জন্য সক্রিয়ভাবে খুঁজে এবং "good first issue" ট্যাগযুক্ত ইস্যু থাকে বিশেষভাবে আপনার মতো লোকদের জন্য! মেইনটেইনাররা নতুন অবদানকারীদের দেখলে সত্যিই উত্তেজিত হন কারণ তারা তাদের নিজস্ব প্রথম পদক্ষেপগুলি মনে করেন। +এবং সবচেয়ে সুন্দর অংশটি হলো: ওপেন সোর্স কমিউনিটি ইন্টারনেটের সবচেয়ে বড় গ্রুপ হাগের মতো। বেশিরভাগ প্রকল্প নতুনদের জন্য সক্রিয়ভাবে খুঁজে এবং "good first issue" ট্যাগযুক্ত ইস্যু থাকে বিশেষভাবে আপনার মতো লোকদের জন্য! মেইনটেইনাররা সত্যিই উত্তেজিত হন যখন তারা নতুন অবদানকারীদের দেখেন কারণ তারা তাদের নিজস্ব প্রথম পদক্ষেপগুলো মনে করেন। ```mermaid flowchart TD - A[🔍 Explore GitHub] --> B[🏷️ Find "good first issue"] - B --> C[📖 Read Contributing Guidelines] - C --> D[🍴 Fork Repository] - D --> E[💻 Set Up Local Environment] - E --> F[🌿 Create Feature Branch] - F --> G[✨ Make Your Contribution] - G --> H[🧪 Test Your Changes] - H --> I[📝 Write Clear Commit] - I --> J[📤 Push & Create PR] - J --> K[💬 Engage with Feedback] - K --> L[🎉 Merged! You're a Contributor!] - L --> M[🌟 Find Next Issue] + A[🔍 গিটহাব অন্বেষণ করুন] --> B[🏷️ "গুড ফার্স্ট ইস্যু" খুঁজুন] + B --> C[📖 কন্ট্রিবিউটিং গাইডলাইন পড়ুন] + C --> D[🍴 রিপোজিটরি ফর্ক করুন] + D --> E[💻 লোকাল এনভায়রনমেন্ট সেট আপ করুন] + E --> F[🌿 ফিচার ব্রাঞ্চ তৈরি করুন] + F --> G[✨ আপনার কন্ট্রিবিউশন করুন] + G --> H[🧪 আপনার পরিবর্তন পরীক্ষা করুন] + H --> I[📝 পরিষ্কার কমিট লিখুন] + I --> J[📤 পুশ করুন এবং পিআর তৈরি করুন] + J --> K[💬 ফিডব্যাকের সাথে যুক্ত হন] + K --> L[🎉 মার্জ হয়েছে! আপনি একজন কন্ট্রিবিউটর!] + L --> M[🌟 পরবর্তী ইস্যু খুঁজুন] style A fill:#e1f5fe style L fill:#c8e6c9 style M fill:#fff59d ``` +আপনি এখানে শুধু কোড শিখছেন না – আপনি এমন একটি বৈশ্বিক পরিবারের অংশ হতে প্রস্তুতি নিচ্ছেন যারা প্রতিদিন জেগে ওঠে এই চিন্তা নিয়ে "কিভাবে আমরা ডিজিটাল বিশ্বকে একটু ভালো করতে পারি?" ক্লাবে স্বাগতম! 🌟 -আপনি এখানে শুধু কোড শিখছেন না – আপনি একটি বৈশ্বিক নির্মাতাদের পরিবারের অংশ হতে প্রস্তুতি নিচ্ছেন যারা প্রতিদিন জেগে ওঠে এবং ভাবে "আমরা কীভাবে ডিজিটাল বিশ্বকে একটু ভালো করতে পারি?" ক্লাবে স্বাগতম! 🌟 - -প্রথমে, GitHub-এ একটি রিপোজিটরি (বা **repo**) খুঁজুন যা আপনার আগ্রহের এবং যেখানে আপনি একটি পরিবর্তন করতে চান। আপনি এর বিষয়বস্তু আপনার মেশিনে কপি করতে চাইবেন। +প্রথমে, চলুন GitHub-এ একটি রিপোজিটরি (বা **repo**) খুঁজে বের করি যা আপনার আগ্রহের এবং যেখানে আপনি একটি পরিবর্তন অবদান রাখতে চান। আপনি এর বিষয়বস্তু আপনার মেশিনে কপি করতে চাইবেন। -✅ 'শিক্ষানবিশ-বান্ধব' রিপোজ খুঁজে পাওয়ার একটি ভালো উপায় হলো [ট্যাগ 'good-first-issue' দ্বারা অনুসন্ধান করা](https://github.blog/2020-01-22-browse-good-first-issues-to-start-contributing-to-open-source/)। +✅ 'শিক্ষানবিস-বান্ধব' রিপো খুঁজে পাওয়ার একটি ভালো উপায় হলো [ট্যাগ 'good-first-issue' দ্বারা অনুসন্ধান করা](https://github.blog/2020-01-22-browse-good-first-issues-to-start-contributing-to-open-source/)। -![রিপো স্থানীয়ভাবে কপি করুন](../../../../translated_images/clone_repo.5085c48d666ead57664f050d806e325d7f883be6838c821e08bc823ab7c66665.bn.png) +![রিপো লোকালি কপি করুন](../../../../translated_images/clone_repo.5085c48d666ead57664f050d806e325d7f883be6838c821e08bc823ab7c66665.bn.png) -কোড কপি করার বিভিন্ন উপায় রয়েছে। একটি উপায় হলো রিপোজিটরির বিষয়বস্তু "ক্লোন" করা, HTTPS, SSH, বা GitHub CLI (Command Line Interface) ব্যবহার করে। +কোড কপি করার বিভিন্ন উপায় রয়েছে। একটি উপায় হলো রিপোজিটরির বিষয়বস্তু "ক্লোন" করা, HTTPS, SSH, অথবা GitHub CLI (কমান্ড লাইন ইন্টারফেস) ব্যবহার করে। -আপনার টার্মিনাল খুলুন এবং রিপোজিটরি ক্লোন করুন এইভাবে: +আপনার টার্মিনাল খুলুন এবং রিপোজিটরিটি ক্লোন করুন: ```bash -# Using HTTPS +# HTTPS ব্যবহার করা হচ্ছে git clone https://github.com/ProjectURL -# Using SSH (requires SSH key setup) +# SSH ব্যবহার করা হচ্ছে (SSH কী সেটআপ প্রয়োজন) git clone git@github.com:username/repository.git -# Using GitHub CLI +# GitHub CLI ব্যবহার করা হচ্ছে gh repo clone username/repository ``` প্রকল্পে কাজ করতে, সঠিক ফোল্ডারে যান: `cd ProjectURL` -আপনি পুরো প্রকল্পটি এইভাবে খুলতে পারেন: -- **[GitHub Codespaces](https://github.com/features/codespaces)** - GitHub-এর ক্লাউড ডেভেলপমেন্ট এনভায়রনমেন্ট যা ব্রাউজারে VS Code সহ আসে +আপনি পুরো প্রকল্পটি খুলতে পারেন: +- **[GitHub Codespaces](https://github.com/features/codespaces)** - GitHub-এর ক্লাউড ডেভেলপমেন্ট এনভায়রনমেন্ট যা ব্রাউজারে VS Code সহ - **[GitHub Desktop](https://desktop.github.com/)** - Git অপারেশনের জন্য একটি GUI অ্যাপ্লিকেশন - **[GitHub.dev](https://github.dev)** - যেকোনো GitHub রিপোতে `.` কী চাপুন এবং ব্রাউজারে VS Code খুলুন - **VS Code** GitHub Pull Requests এক্সটেনশন সহ @@ -549,11 +617,11 @@ gh repo clone username/repository ### GitHub সম্পর্কে আরও কিছু আকর্ষণীয় বিষয় -আপনি GitHub-এ যেকোনো পাবলিক রিপোজিটরিকে স্টার, ওয়াচ এবং/অথবা "fork" করতে পারেন। আপনি আপনার স্টার করা রিপোজিটরিগুলি উপরের ডানদিকে ড্রপ-ডাউন মেনুতে খুঁজে পেতে পারেন। এটি বুকমার্ক করার মতো, তবে কোডের জন্য। +আপনি GitHub-এ যেকোনো পাবলিক রিপোজিটরিকে স্টার, ওয়াচ এবং/অথবা "ফর্ক" করতে পারেন। আপনি আপনার স্টার করা রিপোজিটরিগুলো উপরের ডানদিকের ড্রপ-ডাউন মেনুতে খুঁজে পাবেন। এটি বুকমার্ক করার মতো, তবে কোডের জন্য। -প্রকল্পগুলির একটি ইস্যু ট্র্যাকার থাকে, বেশিরভাগ ক্ষেত্রে GitHub-এ "Issues" ট্যাবে থাকে যদি অন্যথায় নির্দেশিত না হয়, যেখানে লোকেরা প্রকল্প সম্পর্কিত সমস্যাগুলি নিয়ে আলোচনা করে। এবং Pull Requests ট্যাবটি এমন জায়গা যেখানে লোকেরা চলমান পরিবর্তনগুলি নিয়ে আলোচনা এবং পর্যালোচনা করে। +প্রকল্পগুলোর একটি ইস্যু ট্র্যাকার থাকে, বেশিরভাগই GitHub-এ "Issues" ট্যাবে থাকে যদি না অন্যথা উল্লেখ করা হয়, যেখানে প্রকল্প সম্পর্কিত বিষয়গুলো নিয়ে আলোচনা করা হয়। এবং Pull Requests ট্যাব হলো যেখানে চলমান পরিবর্তনগুলো নিয়ে আলোচনা এবং পর্যালোচনা করা হয়। -প্রকল্পগুলিতে ফোরাম, মেইলিং লিস্ট বা Slack, Discord বা IRC-এর মতো চ্যাট চ্যানেলে আলোচনা থাকতে পারে। +প্রকল্পগুলোতে ফোরাম, মেইলিং লিস্ট, বা Slack, Discord বা IRC-এর মতো চ্যাট চ্যানেলে আলোচনা থাকতে পারে। 🔧 **আধুনিক GitHub বৈশিষ্ট্যসমূহ**: - **GitHub Discussions** - কমিউনিটি কথোপকথনের জন্য বিল্ট-ইন ফোরাম @@ -563,128 +631,127 @@ gh repo clone username/repository - **Insights tab** - অবদানকারী, কমিট এবং প্রকল্পের স্বাস্থ্য সম্পর্কে বিশ্লেষণ - **Projects tab** - GitHub-এর বিল্ট-ইন প্রকল্প ব্যবস্থাপনা টুল -✅ আপনার নতুন GitHub রিপো ঘুরে দেখুন এবং কয়েকটি জিনিস চেষ্টা করুন, যেমন সেটিংস সম্পাদনা করা, আপনার রিপোতে তথ্য যোগ করা, একটি প্রকল্প তৈরি করা (যেমন একটি কানবান বোর্ড), এবং অটোমেশনের জন্য GitHub Actions সেট আপ করা। এখানে অনেক কিছু করার আছে! +✅ আপনার নতুন GitHub রিপো ঘুরে দেখুন এবং কয়েকটি জিনিস চেষ্টা করুন, যেমন সেটিংস সম্পাদনা করা, আপনার রিপোতে তথ্য যোগ করা, একটি প্রকল্প তৈরি করা (যেমন একটি কানবান বোর্ড), এবং অটোমেশনের জন্য GitHub Actions সেট আপ করা। অনেক কিছু করার আছে! --- -## 🚀 চ্যালেঞ্জ +## 🚀 চ্যালেঞ্জ -ঠিক আছে, আপনার নতুন GitHub দক্ষতাগুলি পরীক্ষা করার সময় এসেছে! 🚀 এখানে একটি চ্যালেঞ্জ রয়েছে যা সবকিছু সবচেয়ে সন্তোষজনক উপায়ে ক্লিক করবে: +ঠিক আছে, আপনার নতুন GitHub সুপারপাওয়ারগুলো পরীক্ষা করার সময় এসেছে! 🚀 এখানে একটি চ্যালেঞ্জ যা সবকিছু সবচেয়ে সন্তোষজনক উপায়ে ক্লিক করবে: -একজন বন্ধু (বা সেই পরিবারের সদস্য যিনি সবসময় জিজ্ঞাসা করেন আপনি এই "কম্পিউটার জিনিস" নিয়ে কী করছেন) নিয়ে একটি সহযোগী কোডিং অ্যাডভেঞ্চারে যান! এখানেই আসল জাদু ঘটে – একটি প্রকল্প তৈরি করুন, তাদের এটি fork করতে দিন, কিছু শাখা তৈরি করুন, এবং আপনি যে পেশাদার হয়ে উঠছেন তাদের মতো পরিবর্তনগুলি মার্জ করুন। +একজন বন্ধুকে (অথবা সেই পরিবারের সদস্যকে যিনি সবসময় জিজ্ঞাসা করেন আপনি এই "কম্পিউটার জিনিস" নিয়ে কী করছেন) নিয়ে একটি সহযোগী কোডিং অ্যাডভেঞ্চারে যান! এখানেই আসল জাদু ঘটে – একটি প্রকল্প তৈরি করুন, তাদের এটি ফর্ক করতে দিন, কিছু ব্রাঞ্চ তৈরি করুন, এবং পেশাদারদের মতো পরিবর্তনগুলো মার্জ করুন। -আমি মিথ্যা বলব না – আপনি সম্ভবত কোনো এক সময় হাসবেন (বিশেষত যখন আপনি দুজন একই লাইন পরিবর্তন করার চেষ্টা করবেন), হয়তো বিভ্রান্তিতে মাথা চুলকাবেন, তবে আপনি অবশ্যই সেই আশ্চর্যজনক "আহা!" মুহূর্তগুলি পাবেন যা সমস্ত শেখাকে মূল্যবান করে তোলে। এছাড়াও, অন্য কারো সাথে সেই প্রথম সফল মার্জ শেয়ার করার মধ্যে কিছু বিশেষ রয়েছে – এটি আপনার কতদূর এসেছেন তার একটি ছোট উদযাপনের মতো! +আমি মিথ্যা বলব না – আপনি সম্ভবত কোনো এক সময় হাসবেন (বিশেষত যখন আপনি দুজন একই লাইন পরিবর্তন করার চেষ্টা করবেন), হয়তো বিভ্রান্তিতে মাথা চুলকাবেন, কিন্তু আপনি অবশ্যই সেই অসাধারণ "আহা!" মুহূর্তগুলো পাবেন যা সমস্ত শেখাকে সার্থক করে তোলে। এছাড়াও, কারো সাথে সেই প্রথম সফল মার্জ শেয়ার করার মধ্যে কিছু বিশেষ আছে – এটি আপনার কতদূর এসেছেন তার একটি ছোট উদযাপনের মতো! -আপনার এখনও কোনো কোডিং সঙ্গী নেই? কোনো চিন্তা নেই! GitHub কমিউনিটি অত্যন্ত স্বাগতপূর্ণ লোকদের দ্বারা পূর্ণ যারা নতুন হওয়ার অভিজ্ঞতা মনে রাখে। "good first issue" লেবেলযুক্ত রিপোজিটরি খুঁজুন – তারা মূলত বলছে "হে শিক্ষানবিশরা, আমাদের সাথে শিখুন!" এটি কতটা চমৎকার? +আপনার যদি এখনও কোনো কোডিং সঙ্গী না থাকে? কোনো সমস্যা নেই! GitHub কমিউনিটি অত্যন্ত স্বাগতপূর্ণ লোকদের সাথে পূর্ণ যারা নতুন হওয়ার অভিজ্ঞতা মনে রাখে। "good first issue" লেবেলযুক্ত রিপোজিটরিগুলো খুঁজুন – তারা মূলত বলছে "হে শিক্ষানবিসরা, আমাদের সাথে শিখুন!" এটি কতটা চমৎকার? ## পোস্ট-লেকচার কুইজ [পোস্ট-লেকচার কুইজ](https://ff-quizzes.netlify.app/web/en/) -## পর্যালোচনা এবং শিখতে থাকুন +## পুনরালোচনা & শিখতে থাকুন -উফ! 🎉 দেখুন আপনি – আপনি GitHub-এর বেসিকগুলি একটি চ্যাম্পিয়নের মতো জয় করেছেন! যদি আপনার মস্তিষ্ক এখন একটু পূর্ণ মনে হয়, তবে এটি সম্পূর্ণ স্বাভাবিক এবং সত্যিই একটি ভালো লক্ষণ। আপনি এমন টুল শিখেছেন যা আমি শুরু করার সময় বুঝতে সপ্তাহ লেগেছিল। +উফ! 🎉 দেখুন আপনি – আপনি GitHub বেসিকস জয় করেছেন একজন চ্যাম্পিয়নের মতো! যদি আপনার মস্তিষ্ক এখন একটু পূর্ণ মনে হয়, এটি সম্পূর্ণ স্বাভাবিক এবং সত্যিই একটি ভালো লক্ষণ। আপনি এমন টুল শিখেছেন যা আমাকে শুরুতে স্বাচ্ছন্দ্য বোধ করতে কয়েক সপ্তাহ লেগেছিল। -Git এবং GitHub অত্যন্ত শক্তিশালী (গুরুত্বপূর্ণভাবে শক্তিশালী), এবং আমি যে সমস্ত ডেভেলপারকে চিনি – এমনকি যারা এখন জাদুকরের মতো মনে হয় – তাদের এটি সবকিছু বুঝতে এবং অভ্যস্ত হতে অনুশীলন করতে এবং কিছুটা হোঁচট খেতে হয়েছিল। আপনি এই পাঠটি সম্পন্ন করেছেন তা সত্যিই গুরুত্বপূর্ণ টুলগুলির দক্ষতা অর্জনের পথে আপনার ইতিমধ্যেই এগিয়ে যাওয়ার ইঙ্গিত দেয়। +Git এবং GitHub অবিশ্বাস্যভাবে শক্তিশালী (গুরুতরভাবে শক্তিশালী), এবং আমি যে প্রতিটি ডেভেলপারকে চিনি – এমনকি যারা এখন উইজার্ডের মতো মনে হয় – তাদের এটি সব ক্লিক করার আগে অনুশীলন এবং কিছুটা ঘুরে বেড়াতে হয়েছিল। আপনি এই পাঠটি শেষ করেছেন এর অর্থ হলো আপনি ইতিমধ্যেই একজন ডেভেলপারের টুলকিটের সবচেয়ে গুরুত্বপূর্ণ টুলগুলোর কিছু আয়ত্ত করার পথে রয়েছেন। -এখানে কিছু চমৎকার রিসোর্স রয়েছে যা আপনাকে অনুশীলন করতে এবং আরও অসাধারণ হতে সাহায্য করবে: +এখানে কিছু চমৎকার রিসোর্স রয়েছে যা আপনাকে অনুশীলন করতে এবং আরও দুর্দান্ত হতে সাহায্য করবে: -- [ওপেন সোর্স সফটওয়্যারে অবদান রাখার গাইড](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) – পার্থক্য তৈরি করার জন্য আপনার রোডম্যাপ +- [ওপেন সোর্স সফটওয়্যারে অবদান রাখার গাইড](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) – পার্থক্য তৈরির জন্য আপনার রোডম্যাপ - [Git চিটশিট](https://training.github.com/downloads/github-git-cheat-sheet/) – দ্রুত রেফারেন্সের জন্য এটি হাতের কাছে রাখুন! -এবং মনে রাখবেন: অনুশীলন উন্নতি করে, নিখুঁততা নয়! আপনি যত বেশি Git এবং GitHub ব্যবহার করবেন, এটি তত বেশি স্বাভাবিক হয়ে উঠবে। GitHub কিছু আশ্চর্যজনক ইন্টারঅ্যাকটিভ কোর্স তৈরি করেছে যা আপনাকে একটি নিরাপদ পরিবেশে অনুশীলন করতে দেয়: +এবং মনে রাখবেন: অনুশীলন উন্নতি করে, নিখুঁততা নয়! যত বেশি আপনি Git এবং GitHub ব্যবহার করবেন, এটি তত বেশি স্বাভাবিক হয়ে উঠবে। GitHub কিছু চমৎকার ইন্টারঅ্যাকটিভ কোর্স তৈরি করেছে যা আপনাকে একটি নিরাপদ পরিবেশে অনুশীলন করতে দেয়: - [GitHub পরিচিতি](https://github.com/skills/introduction-to-github) - [Markdown ব্যবহার করে যোগাযোগ করুন](https://github.com/skills/communicate-using-markdown) -- [GitHub Pages](https://github.com/skills/github-pages) +- [GitHub পেজ](https://github.com/skills/github-pages) - [মার্জ কনফ্লিক্ট ম্যানেজ করা](https://github.com/skills/resolve-merge-conflicts) -**অ্যাডভেঞ্চারাস অনুভব করছেন? এই আধুনিক টুলগুলি দেখুন:** -- [GitHub CLI ডকুমেন্টেশন](https://cli.github.com/manual/) – যখন আপনি কমান্ড-লাইন জাদুকর হতে চান +**অ্যাডভেঞ্চারাস অনুভব করছেন? এই আধুনিক টুলগুলো দেখুন:** +- [GitHub CLI ডকুমেন্টেশন](https://cli.github.com/manual/) – যখন আপনি কমান্ড-লাইন উইজার্ডের মতো অনুভব করতে চান - [GitHub Codespaces ডকুমেন্টেশন](https://docs.github.com/en/codespaces) – ক্লাউডে কোড করুন! - [GitHub Actions ডকুমেন্টেশন](https://docs.github.com/en/actions) – সবকিছু অটোমেট করুন - [Git সেরা অনুশীলন](https://www.atlassian.com/git/tutorials/comparing-workflows) – আপনার ওয়ার্কফ্লো গেম উন্নত করুন -## GitHub Copilot Agent Challenge 🚀 +## GitHub Copilot এজেন্ট চ্যালেঞ্জ 🚀 -Agent মোড ব্যবহার করে নিম্নলিখিত চ্যালেঞ্জ সম্পন্ন করুন: +এজেন্ট মোড ব্যবহার করে নিম্নলিখিত চ্যালেঞ্জটি সম্পূর্ণ করুন: -**বর্ণনা:** একটি সহযোগী ওয়েব ডেভেলপমেন্ট প্রকল্প তৈরি করুন যা এই পাঠে শেখা সম্পূর্ণ GitHub ওয়ার্কফ্লো প্রদর্শন করে। এই চ্যালেঞ্জটি আপনাকে রিপোজিটরি তৈরি, সহযোগিতা বৈশিষ্ট্য এবং আধুনিক Git ওয়ার্কফ্লো বাস্তব জীবনের পরিস্থিতিতে অনুশীলন করতে সাহায্য করবে। +**বর্ণনা:** একটি সহযোগী ওয়েব ডেভেলপমেন্ট প্রকল্প তৈরি করুন যা আপনি এই পাঠে শিখেছেন সম্পূর্ণ GitHub ওয়ার্কফ্লো প্রদর্শন করে। এই চ্যালেঞ্জটি আপনাকে প্রকৃত বাস্তব পরিস্থিতিতে রিপোজিটরি তৈরি, সহযোগিতা বৈশিষ্ট্য এবং আধুনিক Git ওয়ার্কফ্লো অনুশীলন করতে সাহায্য করবে। -**প্রম্পট:** একটি নতুন পাবলিক GitHub রিপোজিটরি তৈরি করুন একটি সহজ "Web Development Resources" প্রকল্পের জন্য। রিপোজিটরিতে একটি ভালোভাবে গঠিত README.md ফাইল অন্তর্ভুক্ত করুন যা HTML, CSS, JavaScript ইত্যাদি বিভাগ অনুযায়ী দরকারী ওয়েব ডেভেলপমেন্ট টুল এবং রিসোর্স তালিকাভুক্ত করে। রিপোজিটরিটি সঠিক কমিউনিটি স্ট্যান্ডার্ড সহ সেট আপ করুন, যার মধ্যে একটি লাইসেন্স, অবদান রাখার নির্দেশিকা এবং একটি আচরণবিধি অন্তর্ভুক্ত থাকবে। অন্তত দুটি ফিচার শাখা তৈরি করুন: একটি CSS রিসোর্স যোগ করার জন্য এবং অন্যটি JavaScript রিসোর্স যোগ করার জন্য। প্রতিটি শাখায় বর্ণনামূলক commit বার্তা সহ commit করুন, তারপর পরিবর্তনগুলি মূল শাখায় মার্জ করার জন্য pull request তৈরি করুন। Issues, Discussions এবং একটি মৌলিক GitHub Actions ওয়ার্কফ্লো সেট আপ করুন স্বয়ংক্রিয় চেকের জন্য। +**প্রম্পট:** একটি নতুন পাবলিক GitHub রিপোজিটরি তৈরি করুন একটি সহজ "ওয়েব ডেভেলপমেন্ট রিসোর্স" প্রকল্পের জন্য। রিপোজিটরিতে একটি ভালোভাবে গঠিত README.md ফাইল অন্তর্ভুক্ত করুন যা দরকারী ওয়েব ডেভেলপমেন্ট টুল এবং রিসোর্স তালিকাভুক্ত করে, বিভাগ অনুযায়ী সংগঠিত (HTML, CSS, JavaScript, ইত্যাদি)। রিপোজিটরিটি সঠিক কমিউনিটি স্ট্যান্ডার্ড সহ সেট আপ করুন যার মধ্যে একটি লাইসেন্স, অবদান রাখার নির্দেশিকা, এবং একটি আচরণবিধি অন্তর্ভুক্ত। অন্তত দুটি ফিচার ব্রাঞ্চ তৈরি করুন: একটি CSS রিসোর্স যোগ করার জন্য এবং অন্যটি JavaScript রিসোর্স যোগ করার জন্য। প্রতিটি ব্রাঞ্চে বর্ণনামূলক কমিট মেসেজ সহ কমিট করুন, তারপর পরিবর্তনগুলো মেইনে মার্জ করার জন্য pull request তৈরি করুন। Issues, Discussions-এর মতো GitHub বৈশিষ্ট্যগুলো সক্রিয় করুন এবং স্বয়ংক্রিয় চেকের জন্য একটি মৌলিক GitHub Actions ওয়ার্কফ্লো সেট আপ করুন। -## অ্যাসাইনমেন্ট +## অ্যাসাইনমেন্ট -আপনার মিশন, যদি আপনি এটি গ্রহণ করতে চান: GitHub Skills-এ [GitHub পরিচিতি](https://github.com/skills/introduction-to-github) কোর্স সম্পন্ন করুন। এই ইন্টারঅ্যাকটিভ কোর্সটি আপনাকে একটি নিরাপদ, নির্দেশিত পরিবেশে আপনি যা শিখেছেন তা অনুশীলন করতে দেবে। এছাড়াও, আপনি এটি শেষ করলে একটি দুর্দান্ত ব্যাজ পাবেন! 🏅 +আপনার মিশন, যদি আপনি এটি গ্রহণ করতে চান: GitHub Skills-এ [GitHub পরিচিতি](https://github.com/skills/introduction-to-github) কোর্সটি সম্পূর্ণ করুন। এই ইন্টারঅ্যাকটিভ কোর্সটি আপনাকে একটি নিরাপদ, নির্দেশিত পরিবেশে আপনি যা শিখেছেন তা অনুশীলন করতে দেবে। এছাড়াও, আপনি শেষ করলে একটি দুর্দান্ত ব্যাজ পাবেন! 🏅 **আরও চ্যালেঞ্জের জন্য প্রস্তুত?** - আপনার GitHub অ্যাকাউন্টের জন্য SSH প্রমাণীকরণ সেট আপ করুন (আর পাসওয়ার্ড নয়!) -- আপনার দৈনন্দিন Git অপারেশনের জন্য GitHub CLI ব্যবহার করে দেখুন +- আপনার দৈনন্দিন Git অপারেশনের জন্য GitHub CLI ব্যবহার করার চেষ্টা করুন - একটি GitHub Actions ওয়ার্কফ্লো সহ একটি রিপোজিটরি তৈরি করুন - এই রিপোজিটরিটিকে একটি ক্লাউড-ভিত্তিক এডিটরে খুলে GitHub Codespaces অন্বেষণ করুন --- -## 🚀 আপনার GitHub দক্ষতার টাইমলাইন +## 🚀 আপনার GitHub মাস্টারি টাইমলাইন -### ⚡ **আপনি পরবর্তী ৫ মিনিটে যা করতে পারেন** +### ⚡ **পরবর্তী ৫ মিনিটে আপনি যা করতে পারেন** - [ ] এই রিপোজিটরিটিকে এবং আপনার আগ্রহের ৩টি অন্যান্য প্রকল্পকে স্টার দিন -- [ ] আপনার GitHub অ্যাকাউন্টে দুই-ফ্যাক্টর প্রমাণীকরণ সেট আপ করুন -- [ ] আপনার প্রথম রিপোজিটরির জন্য একটি সহজ README তৈরি করুন +- [ ] আপনার GitHub অ্যাকাউন্টে টু-ফ্যাক্টর প্রমাণীকরণ সেট আপ করুন +- [ ] আপনার প্রথম রিপোজিটরির জন্য একটি সাধারণ README তৈরি করুন - [ ] ৫ জন ডেভেলপারকে অনুসরণ করুন যাদের কাজ আপনাকে অনুপ্রাণিত করে -### 🎯 **আপনি এই ঘণ্টায় যা অর্জন করতে পারেন** -- [ ] পোস্ট-লেসন কুইজ সম্পন্ন করুন এবং আপনার GitHub যাত্রা নিয়ে চিন্তা করুন -- [ ] SSH কী সেট আপ করুন পাসওয়ার্ড-মুক্ত GitHub প্রমাণীকরণের জন্য -- [ ] একটি দুর্দান্ত commit বার্তা সহ আপনার প্রথম অর্থপূর্ণ commit তৈরি করুন -- [ ] GitHub-এর "Explore" ট্যাব অন্বেষণ করুন এবং ট্রেন্ডিং প্রকল্পগুলি আবিষ্কার করুন -- [ ] একটি রিপোজিটরি fork করুন এবং একটি ছোট পরিবর্তন করুন +### 🎯 **এই ঘন্টায় আপনি যা অর্জন করতে পারেন** +- [ ] পোস্ট-লেসন কুইজ সম্পূর্ণ করুন এবং আপনার GitHub যাত্রা নিয়ে চিন্তা করুন +- [ ] পাসওয়ার্ড-মুক্ত GitHub প্রমাণীকরণের জন্য SSH কী সেট আপ করুন +- [ ] একটি দুর্দান্ত কমিট মেসেজ সহ আপনার প্রথম অর্থপূর্ণ কমিট তৈরি করুন +- [ ] GitHub-এর "Explore" ট্যাব অন্বেষণ করুন এবং ট্রেন্ডিং প্রকল্প আবিষ্কার করুন +- [ ] একটি রিপোজিটরি ফর্ক করার অনুশীলন করুন এবং একটি ছোট পরিবর্তন করুন ### 📅 **আপনার সপ্তাহব্যাপী GitHub অ্যাডভেঞ্চার** -- [ ] GitHub Skills কোর্স সম্পন্ন করুন (GitHub পরিচিতি, Markdown) -- [ ] একটি ওপেন সোর্স প্রকল্পে আপনার প্রথম pull request তৈরি করুন +- [ ] GitHub Skills কোর্সগুলো সম্পূর্ণ করুন (GitHub পরিচিতি, Markdown) +- [ ] একটি ওপেন সোর্স প্রকল্পে আপনার প্রথম pull request করুন - [ ] আপনার কাজ প্রদর্শনের জন্য একটি GitHub Pages সাইট সেট আপ করুন -- [ ] আপনি আগ্রহী প্রকল্পগুলিতে GitHub Discussions-এ যোগ দিন -- [ ] সঠিক কমিউনিটি স্ট্যান্ডার্ড সহ একটি রিপোজিটরি তৈরি করুন (README, License, ইত্যাদি) +- [ ] আপনি আগ্রহী প্রকল্পগুলোর GitHub Discussions-এ যোগ দিন +- [ ] সঠিক কমিউনিটি স্ট্যান্ডার্ড সহ একটি রিপোজিটরি তৈরি করুন (README, লাইসেন্স, ইত্যাদি) - [ ] ক্লাউড-ভিত্তিক ডেভেলপমেন্টের জন্য GitHub Codespaces চেষ্টা করুন ### 🌟 **আপনার মাসব্যাপী রূপান্তর** - [ ] ৩টি ভিন্ন ওপেন সোর্স প্রকল্পে অবদান রাখুন -- [ ] GitHub-এ নতুন কাউকে পরামর্শ দিন (অগ্রসর করুন!) +- [ ] নতুনদের GitHub শেখাতে সাহায্য করুন (এটি এগিয়ে দিন!) - [ ] GitHub Actions দিয়ে স্বয়ংক্রিয় ওয়ার্কফ্লো সেট আপ করুন -- [ ] আপনার GitHub অবদান প্রদর্শন করে একটি পোর্টফোলিও তৈরি করুন -- [ ] Hacktoberfest বা অনুরূপ কমিউনিটি ইভেন্টে অংশগ্রহণ করুন +- [ ] আপনার GitHub অবদান প্রদর্শনের জন্য একটি পোর্টফোলিও তৈরি করুন +- [ ] Hacktoberfest বা অনুরূপ কমিউনিটি ইভেন্টে অংশ নিন - [ ] অন্যরা অবদান রাখে এমন আপনার নিজস্ব প্রকল্পের মেইনটেইনার হয়ে উঠুন -### 🎓 **GitHub দক্ষতার চূড়ান্ত চেক-ইন** +### 🎓 **GitHub মাস্টারি চূড়ান্ত চেক-ইন** **আপনার কতদূর এসেছেন তা উদযাপন করুন:** -- GitHub ব্যবহার করার বিষয়ে আপনার প্রিয় জিনিসটি কী? -- কোন সহযোগিতা বৈশিষ্ট্যটি আপনাকে সবচেয়ে বেশি উত্তেজিত করে? +- GitHub ব্যবহার করার আপনার প্রিয় বিষয়টি কী? +- কোন সহযোগিতা বৈশিষ্ট্যটি আপনাকে সবচেয়ে উত্তেজিত করে? - ওপেন সোর্সে অবদান রাখার বিষয়ে আপনি কতটা আত্মবিশ্বাসী বোধ করছেন? - আপনি কোন প্রথম প্রকল্পে অবদান রাখতে চান? ```mermaid journey - title Your GitHub Confidence Journey - section Today - Nervous: 3: You - Curious: 4: You - Excited: 5: You - section This Week - Practicing: 4: You - Contributing: 5: You - Connecting: 5: You - section Next Month - Collaborating: 5: You - Leading: 5: You - Inspiring Others: 5: You + title আপনার গিটহাব আত্মবিশ্বাস যাত্রা + section আজ + নার্ভাস: 3: আপনি + কৌতূহলী: 4: আপনি + উত্তেজিত: 5: আপনি + section এই সপ্তাহ + অনুশীলন: 4: আপনি + অবদান রাখা: 5: আপনি + সংযোগ স্থাপন: 5: আপনি + section পরের মাস + সহযোগিতা করা: 5: আপনি + নেতৃত্ব দেওয়া: 5: আপনি + অন্যদের অনুপ্রাণিত করা: 5: আপনি ``` - -> 🌍 **গ্লোবাল ডেভেলপার কমিউনিটিতে স্বাগতম!** এখন আপনার কাছে বিশ্বের লক্ষ লক্ষ ডেভেলপারের সাথে সহযোগিতা করার টুল রয়েছে। আপনার প্রথম অবদানটি ছোট মনে হতে পারে, তবে মনে রাখবেন - প্রতিটি বড় ওপেন সোর্স প্রকল্প কেউ তাদের প্রথম commit করার মাধ্যমে শুরু করেছিল। প্রশ্নটি হলো আপনি প্রভাব ফেলবেন কিনা তা নয়, বরং কোন আশ্চর্যজনক প্রকল্পটি প্রথমে আপনার অনন্য দৃষ্টিভঙ্গি থেকে উপকৃত হবে! 🚀 - -মনে রাখবেন: প্রত +> 🌍 **গ্লোবাল ডেভেলপার কমিউনিটিতে স্বাগতম!** এখন আপনার কাছে এমন টুল রয়েছে যা আপনাকে বিশ্বব্যাপ --- + **অস্বীকৃতি**: -এই নথিটি AI অনুবাদ পরিষেবা [Co-op Translator](https://github.com/Azure/co-op-translator) ব্যবহার করে অনুবাদ করা হয়েছে। আমরা যথাসাধ্য সঠিকতার জন্য চেষ্টা করি, তবে অনুগ্রহ করে মনে রাখবেন যে স্বয়ংক্রিয় অনুবাদে ত্রুটি বা অসঙ্গতি থাকতে পারে। মূল ভাষায় থাকা নথিটিকে প্রামাণিক উৎস হিসেবে বিবেচনা করা উচিত। গুরুত্বপূর্ণ তথ্যের জন্য, পেশাদার মানব অনুবাদ সুপারিশ করা হয়। এই অনুবাদ ব্যবহারের ফলে কোনো ভুল বোঝাবুঝি বা ভুল ব্যাখ্যার জন্য আমরা দায়ী থাকব না। \ No newline at end of file +এই নথিটি AI অনুবাদ পরিষেবা [Co-op Translator](https://github.com/Azure/co-op-translator) ব্যবহার করে অনুবাদ করা হয়েছে। আমরা যথাসাধ্য সঠিক অনুবাদের চেষ্টা করি, তবে অনুগ্রহ করে মনে রাখবেন যে স্বয়ংক্রিয় অনুবাদে ত্রুটি বা অসঙ্গতি থাকতে পারে। নথিটির মূল ভাষায় থাকা সংস্করণটিকে প্রামাণিক উৎস হিসেবে বিবেচনা করা উচিত। গুরুত্বপূর্ণ তথ্যের জন্য, পেশাদার মানব অনুবাদ সুপারিশ করা হয়। এই অনুবাদ ব্যবহারের ফলে সৃষ্ট কোনো ভুল বোঝাবুঝি বা ভুল ব্যাখ্যার জন্য আমরা দায়ী নই। + \ No newline at end of file diff --git a/translations/bn/README.md b/translations/bn/README.md index baf07110..c44195e5 100644 --- a/translations/bn/README.md +++ b/translations/bn/README.md @@ -1,8 +1,8 @@ [Arabic](../ar/README.md) | [Bengali](./README.md) | [Bulgarian](../bg/README.md) | [Burmese (Myanmar)](../my/README.md) | [Chinese (Simplified)](../zh/README.md) | [Chinese (Traditional, Hong Kong)](../hk/README.md) | [Chinese (Traditional, Macau)](../mo/README.md) | [Chinese (Traditional, Taiwan)](../tw/README.md) | [Croatian](../hr/README.md) | [Czech](../cs/README.md) | [Danish](../da/README.md) | [Dutch](../nl/README.md) | [Estonian](../et/README.md) | [Finnish](../fi/README.md) | [French](../fr/README.md) | [German](../de/README.md) | [Greek](../el/README.md) | [Hebrew](../he/README.md) | [Hindi](../hi/README.md) | [Hungarian](../hu/README.md) | [Indonesian](../id/README.md) | [Italian](../it/README.md) | [Japanese](../ja/README.md) | [Korean](../ko/README.md) | [Lithuanian](../lt/README.md) | [Malay](../ms/README.md) | [Marathi](../mr/README.md) | [Nepali](../ne/README.md) | [Norwegian](../no/README.md) | [Persian (Farsi)](../fa/README.md) | [Polish](../pl/README.md) | [Portuguese (Brazil)](../br/README.md) | [Portuguese (Portugal)](../pt/README.md) | [Punjabi (Gurmukhi)](../pa/README.md) | [Romanian](../ro/README.md) | [Russian](../ru/README.md) | [Serbian (Cyrillic)](../sr/README.md) | [Slovak](../sk/README.md) | [Slovenian](../sl/README.md) | [Spanish](../es/README.md) | [Swahili](../sw/README.md) | [Swedish](../sv/README.md) | [Tagalog (Filipino)](../tl/README.md) | [Tamil](../ta/README.md) | [Thai](../th/README.md) | [Turkish](../tr/README.md) | [Ukrainian](../uk/README.md) | [Urdu](../ur/README.md) | [Vietnamese](../vi/README.md) -**যদি আপনি অতিরিক্ত অনুবাদ ভাষা যোগ করতে চান, তাহলে [এখানে](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md) তালিকাভুক্ত ভাষাগুলো দেখতে পারেন।** +**যদি আপনি অতিরিক্ত ভাষার অনুবাদ চান, সমর্থিত ভাষার তালিকা [এখানে](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md) দেওয়া আছে।** [![Open in Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners) #### 🧑‍🎓 _আপনি কি একজন শিক্ষার্থী?_ -[**স্টুডেন্ট হাব পেজ**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) পরিদর্শন করুন যেখানে আপনি বিগিনার রিসোর্স, স্টুডেন্ট প্যাক এবং এমনকি বিনামূল্যে সার্টিফিকেট ভাউচার পাওয়ার উপায় খুঁজে পাবেন। এটি এমন একটি পেজ যা আপনি বুকমার্ক করে রাখতে পারেন এবং সময় সময় চেক করতে পারেন কারণ আমরা প্রতি মাসে নতুন কন্টেন্ট যোগ করি। +[**Student Hub page**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) পরিদর্শন করুন যেখানে আপনি শিক্ষার্থীদের জন্য রিসোর্স, স্টুডেন্ট প্যাক এবং এমনকি বিনামূল্যে সার্টিফিকেট ভাউচার পাওয়ার উপায় খুঁজে পাবেন। এটি এমন একটি পৃষ্ঠা যা আপনি বুকমার্ক করতে পারেন এবং মাসিকভাবে নতুন কন্টেন্টের জন্য চেক করতে পারেন। -### 📣 ঘোষণা - নতুন গিটহাব কোপাইলট এজেন্ট মোড চ্যালেঞ্জ সম্পন্ন করুন! +### 📣 ঘোষণা - নতুন GitHub Copilot Agent মোড চ্যালেঞ্জ সম্পন্ন করুন! -নতুন চ্যালেঞ্জ যোগ করা হয়েছে, বেশিরভাগ অধ্যায়ে "GitHub Copilot Agent Challenge 🚀" খুঁজুন। এটি একটি নতুন চ্যালেঞ্জ যা আপনি গিটহাব কোপাইলট এবং এজেন্ট মোড ব্যবহার করে সম্পন্ন করতে পারেন। যদি আপনি আগে এজেন্ট মোড ব্যবহার না করে থাকেন, এটি শুধু টেক্সট তৈরি করাই নয়, ফাইল তৈরি এবং সম্পাদনা, কমান্ড চালানো এবং আরও অনেক কিছু করতে সক্ষম। +নতুন চ্যালেঞ্জ যোগ করা হয়েছে, "GitHub Copilot Agent Challenge 🚀" খুঁজুন বেশিরভাগ অধ্যায়ে। এটি একটি নতুন চ্যালেঞ্জ যা আপনি GitHub Copilot এবং Agent মোড ব্যবহার করে সম্পন্ন করতে পারেন। যদি আপনি আগে Agent মোড ব্যবহার না করে থাকেন, এটি শুধু টেক্সট তৈরি করাই নয়, ফাইল তৈরি ও সম্পাদনা, কমান্ড চালানো এবং আরও অনেক কিছু করতে সক্ষম। -### 📣 ঘোষণা - _জেনারেটিভ এআই ব্যবহার করে নতুন প্রকল্প তৈরি করুন_ +### 📣 ঘোষণা - _Generative AI ব্যবহার করে নতুন প্রকল্প তৈরি করুন_ -নতুন AI অ্যাসিস্ট্যান্ট প্রকল্প যোগ করা হয়েছে, এটি দেখুন [প্রকল্প](./09-chat-project/README.md) +নতুন AI Assistant প্রকল্প যোগ করা হয়েছে, এটি দেখুন [project](./09-chat-project/README.md) -### 📣 ঘোষণা - _নতুন কারিকুলাম_ জাভাস্ক্রিপ্টের জন্য জেনারেটিভ এআই সম্প্রতি প্রকাশিত হয়েছে +### 📣 ঘোষণা - _Generative AI এর জন্য নতুন কারিকুলাম_ জাভাস্ক্রিপ্টে প্রকাশিত হয়েছে -আমাদের নতুন জেনারেটিভ এআই কারিকুলাম মিস করবেন না! +আমাদের নতুন Generative AI কারিকুলাম মিস করবেন না! শুরু করতে [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) পরিদর্শন করুন! ![Background](../../translated_images/background.148a8d43afde57303419a663f50daf586681bc2fabf833f66ef6954073983c66.bn.png) - বেসিক থেকে RAG পর্যন্ত সবকিছু নিয়ে পাঠ। -- জেনারেটিভ এআই এবং আমাদের সঙ্গী অ্যাপ ব্যবহার করে ঐতিহাসিক চরিত্রদের সাথে যোগাযোগ করুন। +- GenAI এবং আমাদের সঙ্গী অ্যাপ ব্যবহার করে ঐতিহাসিক চরিত্রের সাথে যোগাযোগ করুন। - মজাদার এবং আকর্ষণীয় গল্প, আপনি সময় ভ্রমণ করবেন! ![character](../../translated_images/character.5c0dd8e067ffd693c16e2c5b7412ab075a2215ce31f998305639fa3a05e14fbe.bn.png) -প্রত্যেকটি পাঠে একটি অ্যাসাইনমেন্ট, জ্ঞান যাচাই এবং একটি চ্যালেঞ্জ অন্তর্ভুক্ত থাকে যা আপনাকে শেখার বিষয়গুলোতে গাইড করবে: +প্রতিটি পাঠে একটি অ্যাসাইনমেন্ট, একটি জ্ঞান যাচাই এবং একটি চ্যালেঞ্জ অন্তর্ভুক্ত থাকে যা আপনাকে শেখার বিষয়গুলোতে গাইড করবে: - প্রম্পটিং এবং প্রম্পট ইঞ্জিনিয়ারিং -- টেক্সট এবং ইমেজ অ্যাপ তৈরি +- টেক্সট এবং ইমেজ অ্যাপ জেনারেশন - সার্চ অ্যাপস -শুরু করতে [https://aka.ms/genai-js-course](../../[https:/aka.ms/genai-js-course) পরিদর্শন করুন! +শুরু করতে [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) পরিদর্শন করুন! ## 🌱 শুরু করা -> **শিক্ষকগণ**, আমরা এই কারিকুলামটি কীভাবে ব্যবহার করবেন তার জন্য [কিছু পরামর্শ অন্তর্ভুক্ত করেছি](for-teachers.md)। আমাদের [আলোচনা ফোরামে](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner) আপনার মতামত জানাতে চাই! +> **শিক্ষকগণ**, আমরা [কিছু পরামর্শ](for-teachers.md) অন্তর্ভুক্ত করেছি এই কারিকুলাম কীভাবে ব্যবহার করবেন। আমাদের [আলোচনা ফোরামে](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner) আপনার মতামত জানাতে ভালো লাগবে! -**[শিক্ষার্থীরা](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, প্রতিটি পাঠের জন্য, একটি প্রাক-লেকচার কুইজ দিয়ে শুরু করুন এবং লেকচার মেটেরিয়ালটি পড়ুন, বিভিন্ন কার্যক্রম সম্পন্ন করুন এবং পোস্ট-লেকচার কুইজের মাধ্যমে আপনার বোঝাপড়া যাচাই করুন। +**[শিক্ষার্থীরা](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, প্রতিটি পাঠের জন্য, প্রি-লেকচার কুইজ দিয়ে শুরু করুন এবং লেকচার মেটেরিয়াল পড়ুন, বিভিন্ন কার্যক্রম সম্পন্ন করুন এবং পোস্ট-লেকচার কুইজ দিয়ে আপনার জ্ঞান যাচাই করুন। -আপনার শেখার অভিজ্ঞতা উন্নত করতে, আপনার সহপাঠীদের সাথে সংযোগ স্থাপন করুন এবং একসাথে প্রকল্পগুলিতে কাজ করুন! আমাদের [আলোচনা ফোরামে](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) আলোচনা করার জন্য উৎসাহিত করা হয় যেখানে আমাদের মডারেটর টিম আপনার প্রশ্নের উত্তর দিতে প্রস্তুত থাকবে। +আপনার শেখার অভিজ্ঞতা উন্নত করতে, আপনার সহপাঠীদের সাথে প্রকল্পগুলোতে কাজ করুন! আমাদের [আলোচনা ফোরামে](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) আলোচনা উৎসাহিত করা হয় যেখানে আমাদের মডারেটর টিম আপনার প্রশ্নের উত্তর দিতে প্রস্তুত থাকবে। -আপনার শিক্ষা আরও এগিয়ে নিতে, আমরা [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) পরিদর্শন করার পরামর্শ দিই যেখানে অতিরিক্ত শিক্ষামূলক উপকরণ পাওয়া যাবে। +আপনার শিক্ষা আরও এগিয়ে নিতে, আমরা [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) পরিদর্শন করার জন্য অত্যন্ত সুপারিশ করি যেখানে অতিরিক্ত শিক্ষার উপকরণ পাওয়া যাবে। ### 📋 আপনার পরিবেশ সেট আপ করা -এই কারিকুলামে একটি প্রস্তুত ডেভেলপমেন্ট পরিবেশ রয়েছে! আপনি শুরু করার সময় এই কারিকুলামটি [Codespace](https://github.com/features/codespaces/) (_একটি ব্রাউজার-ভিত্তিক, ইনস্টলেশনের প্রয়োজন নেই এমন পরিবেশ_) বা আপনার কম্পিউটারে লোকালভাবে একটি টেক্সট এডিটর যেমন [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) ব্যবহার করে চালাতে পারেন। +এই কারিকুলামের জন্য একটি ডেভেলপমেন্ট পরিবেশ প্রস্তুত রয়েছে! শুরু করার সময় আপনি [Codespace](https://github.com/features/codespaces/) (_একটি ব্রাউজার-ভিত্তিক, কোনো ইনস্টল প্রয়োজন নেই পরিবেশ_) বা আপনার কম্পিউটারে লোকালভাবে একটি টেক্সট এডিটর যেমন [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) ব্যবহার করতে পারেন। #### আপনার রিপোজিটরি তৈরি করুন -আপনার কাজ সহজে সংরক্ষণ করার জন্য, আপনার নিজস্ব এই রিপোজিটরির একটি কপি তৈরি করার পরামর্শ দেওয়া হচ্ছে। আপনি এই পেজের উপরের **Use this template** বাটনে ক্লিক করে এটি করতে পারেন। এটি আপনার গিটহাব অ্যাকাউন্টে কারিকুলামের একটি কপি সহ একটি নতুন রিপোজিটরি তৈরি করবে। +আপনার কাজ সহজে সংরক্ষণ করার জন্য, আপনার নিজস্ব এই রিপোজিটরির একটি কপি তৈরি করার সুপারিশ করা হয়। আপনি পৃষ্ঠার শীর্ষে **Use this template** বোতামে ক্লিক করে এটি করতে পারেন। এটি আপনার GitHub অ্যাকাউন্টে কারিকুলামের একটি কপি সহ একটি নতুন রিপোজিটরি তৈরি করবে। নিচের ধাপগুলো অনুসরণ করুন: -1. **রিপোজিটরি ফর্ক করুন**: এই পেজের উপরের ডানদিকে থাকা "Fork" বাটনে ক্লিক করুন। +1. **রিপোজিটরি ফর্ক করুন**: এই পৃষ্ঠার উপরের ডানদিকে "Fork" বোতামে ক্লিক করুন। 2. **রিপোজিটরি ক্লোন করুন**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` -#### কারিকুলামটি Codespace-এ চালানো +#### Codespace-এ কারিকুলাম চালানো -আপনার তৈরি করা এই রিপোজিটরির কপিতে, **Code** বাটনে ক্লিক করুন এবং **Open with Codespaces** নির্বাচন করুন। এটি আপনার কাজ করার জন্য একটি নতুন Codespace তৈরি করবে। +আপনার তৈরি করা এই রিপোজিটরির কপিতে, **Code** বোতামে ক্লিক করুন এবং **Open with Codespaces** নির্বাচন করুন। এটি আপনার কাজ করার জন্য একটি নতুন Codespace তৈরি করবে। ![Codespace](../../translated_images/createcodespace.0238bbf4d7a8d955fa8fa7f7b6602a3cb6499a24708fbee589f83211c5a613b7.bn.png) -#### কারিকুলামটি আপনার কম্পিউটারে লোকালভাবে চালানো +#### আপনার কম্পিউটারে লোকালভাবে কারিকুলাম চালানো -এই কারিকুলামটি আপনার কম্পিউটারে লোকালভাবে চালানোর জন্য, আপনার একটি টেক্সট এডিটর, একটি ব্রাউজার এবং একটি কমান্ড লাইন টুল প্রয়োজন। আমাদের প্রথম পাঠ, [প্রোগ্রামিং ভাষা এবং টুলস অফ দ্য ট্রেডের পরিচিতি](../../1-getting-started-lessons/1-intro-to-programming-languages), আপনাকে এই টুলগুলোর বিভিন্ন বিকল্পের মাধ্যমে গাইড করবে যাতে আপনি আপনার জন্য সেরা অপশনটি বেছে নিতে পারেন। +আপনার কম্পিউটারে এই কারিকুলাম চালানোর জন্য, একটি টেক্সট এডিটর, একটি ব্রাউজার এবং একটি কমান্ড লাইন টুল প্রয়োজন হবে। আমাদের প্রথম পাঠ, [প্রোগ্রামিং ভাষা এবং টুলস অফ দ্য ট্রেডের পরিচিতি](../../1-getting-started-lessons/1-intro-to-programming-languages), আপনাকে এই টুলগুলোর বিভিন্ন বিকল্পের মাধ্যমে গাইড করবে যাতে আপনি আপনার জন্য সেরা বিকল্পটি বেছে নিতে পারেন। -আমাদের সুপারিশ হলো [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) ব্যবহার করা, যা একটি বিল্ট-ইন [টার্মিনাল](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) সহ আসে। আপনি [এখানে](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) Visual Studio Code ডাউনলোড করতে পারেন। +আমাদের সুপারিশ হলো [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) ব্যবহার করা, যা একটি বিল্ট-ইন [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) সহ আসে। আপনি [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) এখান থেকে ডাউনলোড করতে পারেন। -1. আপনার রিপোজিটরি আপনার কম্পিউটারে ক্লোন করুন। আপনি এটি **Code** বাটনে ক্লিক করে এবং URL কপি করে করতে পারেন: +1. আপনার রিপোজিটরি আপনার কম্পিউটারে ক্লোন করুন। আপনি **Code** বোতামে ক্লিক করে URL কপি করে এটি করতে পারেন: [CodeSpace](./images/createcodespace.png) - তারপর, [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) এর [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) খুলুন এবং নিচের কমান্ডটি চালান, `` এর জায়গায় আপনার কপি করা URL দিন: + তারপর, [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon)-এর মধ্যে [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) খুলুন এবং নিচের কমান্ডটি চালান, যেখানে `` আপনার কপি করা URL দিয়ে প্রতিস্থাপন করুন: ```bash git clone ``` -2. Visual Studio Code-এ ফোল্ডারটি খুলুন। আপনি এটি **File** > **Open Folder**-এ ক্লিক করে এবং ক্লোন করা ফোল্ডারটি নির্বাচন করে করতে পারেন। +2. Visual Studio Code-এ ফোল্ডারটি খুলুন। আপনি **File** > **Open Folder**-এ ক্লিক করে এবং ক্লোন করা ফোল্ডারটি নির্বাচন করে এটি করতে পারেন। -> Visual Studio Code-এর জন্য সুপারিশকৃত এক্সটেনশন: +> সুপারিশকৃত Visual Studio Code এক্সটেনশন: > -> * [লাইভ সার্ভার](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - HTML পেজগুলোকে Visual Studio Code-এ প্রিভিউ করার জন্য -> * [কোপাইলট](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - কোড দ্রুত লেখার জন্য সাহায্য করে +> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - Visual Studio Code-এর মধ্যে HTML পৃষ্ঠাগুলো প্রিভিউ করার জন্য +> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - কোড দ্রুত লিখতে সাহায্য করে ## 📂 প্রতিটি পাঠে অন্তর্ভুক্ত: @@ -142,120 +142,120 @@ CO_OP_TRANSLATOR_METADATA: - অ্যাসাইনমেন্ট - [পোস্ট-পাঠ কুইজ](https://ff-quizzes.netlify.app/web/) -> **কুইজ সম্পর্কে একটি নোট**: সমস্ত কুইজ Quiz-app ফোল্ডারে অন্তর্ভুক্ত, মোট ৪৮টি কুইজ, প্রতিটিতে তিনটি প্রশ্ন। এগুলো [এখানে](https://ff-quizzes.netlify.app/web/) পাওয়া যাবে। কুইজ অ্যাপটি লোকাল বা Azure-এ ডিপ্লয় করে চালানো যেতে পারে; `quiz-app` ফোল্ডারে নির্দেশনা অনুসরণ করুন। +> **কুইজ সম্পর্কে একটি নোট**: সমস্ত কুইজ Quiz-app ফোল্ডারে অন্তর্ভুক্ত, মোট ৪৮টি কুইজ, প্রতিটিতে তিনটি প্রশ্ন। এগুলো [এখানে](https://ff-quizzes.netlify.app/web/) পাওয়া যাবে। Quiz-app লোকালভাবে চালানো বা Azure-এ ডিপ্লয় করা যেতে পারে; `quiz-app` ফোল্ডারের নির্দেশনা অনুসরণ করুন। ## 🗃️ পাঠসমূহ -| | প্রকল্পের নাম | শেখানো ধারণা | শেখার লক্ষ্য | লিঙ্কযুক্ত পাঠ | লেখক | +| | প্রকল্পের নাম | শেখানো ধারণা | শেখার উদ্দেশ্য | লিঙ্কযুক্ত পাঠ | লেখক | | :-: | :------------------------------------------------------: | :--------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------: | :---------------------: | -| 01 | শুরু করা | প্রোগ্রামিং এবং টুলসের পরিচিতি | বেশিরভাগ প্রোগ্রামিং ভাষার মৌলিক ভিত্তি এবং পেশাদার ডেভেলপারদের কাজের জন্য ব্যবহৃত সফটওয়্যার সম্পর্কে জানুন | [প্রোগ্রামিং ভাষা এবং টুলসের পরিচিতি](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | জেসমিন | -| 02 | শুরু করা | গিটহাবের বেসিক, টিমের সাথে কাজ করা | আপনার প্রকল্পে গিটহাব ব্যবহার করার পদ্ধতি, কোড বেসে অন্যদের সাথে সহযোগিতা করার পদ্ধতি | [গিটহাবের পরিচিতি](./1-getting-started-lessons/2-github-basics/README.md) | ফ্লোর | -| 03 | শুরু করা | অ্যাক্সেসিবিলিটি | ওয়েব অ্যাক্সেসিবিলিটির বেসিক সম্পর্কে জানুন | [অ্যাক্সেসিবিলিটির মৌলিক বিষয়](./1-getting-started-lessons/3-accessibility/README.md) | ক্রিস্টোফার | -| 04 | জেএস বেসিক | জাভাস্ক্রিপ্ট ডেটা টাইপ | জাভাস্ক্রিপ্ট ডেটা টাইপের বেসিক | [ডেটা টাইপ](./2-js-basics/1-data-types/README.md) | জেসমিন | -| 05 | জেএস বেসিক | ফাংশন এবং মেথড | অ্যাপ্লিকেশনের লজিক ফ্লো পরিচালনা করার জন্য ফাংশন এবং মেথড সম্পর্কে জানুন | [ফাংশন এবং মেথড](./2-js-basics/2-functions-methods/README.md) | জেসমিন এবং ক্রিস্টোফার | -| 06 | জেএস বেসিক | জেএস দিয়ে সিদ্ধান্ত নেওয়া | সিদ্ধান্ত নেওয়ার পদ্ধতি ব্যবহার করে কোডে শর্ত তৈরি করার পদ্ধতি শিখুন | [সিদ্ধান্ত নেওয়া](./2-js-basics/3-making-decisions/README.md) | জেসমিন | -| 07 | জেএস বেসিক | অ্যারে এবং লুপ | জাভাস্ক্রিপ্টে অ্যারে এবং লুপ ব্যবহার করে ডেটা নিয়ে কাজ করুন | [অ্যারে এবং লুপ](./2-js-basics/4-arrays-loops/README.md) | জেসমিন | -| 08 | [টেরারিয়াম](./3-terrarium/solution/README.md) | HTML এর ব্যবহার | একটি অনলাইন টেরারিয়াম তৈরি করার জন্য HTML তৈরি করুন, লেআউট তৈরি করার উপর ফোকাস | [HTML এর পরিচিতি](./3-terrarium/1-intro-to-html/README.md) | জেন | -| 09 | [টেরারিয়াম](./3-terrarium/solution/README.md) | CSS এর ব্যবহার | অনলাইন টেরারিয়াম স্টাইল করার জন্য CSS তৈরি করুন, CSS এর বেসিক এবং পেজকে রেসপন্সিভ করার উপর ফোকাস | [CSS এর পরিচিতি](./3-terrarium/2-intro-to-css/README.md) | জেন | -| 10 | [টেরারিয়াম](./3-terrarium/solution/README.md) | জাভাস্ক্রিপ্ট ক্লোজার, DOM ম্যানিপুলেশন | টেরারিয়ামকে ড্র্যাগ/ড্রপ ইন্টারফেস হিসেবে কাজ করার জন্য জাভাস্ক্রিপ্ট তৈরি করুন, ক্লোজার এবং DOM ম্যানিপুলেশনের উপর ফোকাস | [জাভাস্ক্রিপ্ট ক্লোজার, DOM ম্যানিপুলেশন](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | জেন | -| 11 | [টাইপিং গেম](./4-typing-game/solution/README.md) | টাইপিং গেম তৈরি করুন | কীবোর্ড ইভেন্ট ব্যবহার করে আপনার জাভাস্ক্রিপ্ট অ্যাপের লজিক চালানোর পদ্ধতি শিখুন | [ইভেন্ট-চালিত প্রোগ্রামিং](./4-typing-game/typing-game/README.md) | ক্রিস্টোফার | -| 12 | [গ্রিন ব্রাউজার এক্সটেনশন](./5-browser-extension/solution/README.md) | ব্রাউজারের সাথে কাজ | ব্রাউজার কীভাবে কাজ করে, এর ইতিহাস এবং ব্রাউজার এক্সটেনশনের প্রথম উপাদানগুলোর কাঠামো তৈরি করার পদ্ধতি শিখুন | [ব্রাউজার সম্পর্কে](./5-browser-extension/1-about-browsers/README.md) | জেন | -| 13 | [গ্রিন ব্রাউজার এক্সটেনশন](./5-browser-extension/solution/README.md) | ফর্ম তৈরি করা, API কল করা এবং লোকাল স্টোরেজে ভেরিয়েবল সংরক্ষণ করা | আপনার ব্রাউজার এক্সটেনশনের জাভাস্ক্রিপ্ট উপাদান তৈরি করুন যা লোকাল স্টোরেজে সংরক্ষিত ভেরিয়েবল ব্যবহার করে API কল করে | [API, ফর্ম এবং লোকাল স্টোরেজ](./5-browser-extension/2-forms-browsers-local-storage/README.md) | জেন | -| 14 | [গ্রিন ব্রাউজার এক্সটেনশন](./5-browser-extension/solution/README.md) | ব্রাউজারের ব্যাকগ্রাউন্ড প্রসেস, ওয়েব পারফরম্যান্স | এক্সটেনশনের আইকন পরিচালনা করার জন্য ব্রাউজারের ব্যাকগ্রাউন্ড প্রসেস ব্যবহার করুন; ওয়েব পারফরম্যান্স এবং কিছু অপ্টিমাইজেশন সম্পর্কে জানুন | [ব্যাকগ্রাউন্ড টাস্ক এবং পারফরম্যান্স](./5-browser-extension/3-background-tasks-and-performance/README.md) | জেন | -| 15 | [স্পেস গেম](./6-space-game/solution/README.md) | জাভাস্ক্রিপ্ট দিয়ে আরও উন্নত গেম ডেভেলপমেন্ট | ক্লাস এবং কম্পোজিশন ব্যবহার করে ইনহেরিটেন্স এবং পাব/সাব প্যাটার্ন সম্পর্কে জানুন, গেম তৈরি করার প্রস্তুতির জন্য | [উন্নত গেম ডেভেলপমেন্টের পরিচিতি](./6-space-game/1-introduction/README.md) | ক্রিস | -| 16 | [স্পেস গেম](./6-space-game/solution/README.md) | ক্যানভাসে আঁকা | ক্যানভাস API সম্পর্কে জানুন, যা স্ক্রিনে উপাদান আঁকার জন্য ব্যবহৃত হয় | [ক্যানভাসে আঁকা](./6-space-game/2-drawing-to-canvas/README.md) | ক্রিস | -| 17 | [স্পেস গেম](./6-space-game/solution/README.md) | স্ক্রিনে উপাদান সরানো | কার্টেসিয়ান কোঅর্ডিনেট এবং ক্যানভাস API ব্যবহার করে উপাদানগুলো কীভাবে গতি পেতে পারে তা আবিষ্কার করুন | [উপাদান সরানো](./6-space-game/3-moving-elements-around/README.md) | ক্রিস | -| 18 | [স্পেস গেম](./6-space-game/solution/README.md) | সংঘর্ষ সনাক্তকরণ | কীপ্রেস ব্যবহার করে উপাদানগুলোকে একে অপরের সাথে সংঘর্ষ এবং প্রতিক্রিয়া জানাতে দিন এবং গেমের পারফরম্যান্স নিশ্চিত করার জন্য কুলডাউন ফাংশন প্রদান করুন | [সংঘর্ষ সনাক্তকরণ](./6-space-game/4-collision-detection/README.md) | ক্রিস | -| 19 | [স্পেস গেম](./6-space-game/solution/README.md) | স্কোর রাখা | গেমের অবস্থা এবং পারফরম্যান্সের উপর ভিত্তি করে গাণিতিক হিসাব করুন | [স্কোর রাখা](./6-space-game/5-keeping-score/README.md) | ক্রিস | -| 20 | [স্পেস গেম](./6-space-game/solution/README.md) | গেম শেষ এবং পুনরায় শুরু করা | গেম শেষ এবং পুনরায় শুরু করার পদ্ধতি শিখুন, যার মধ্যে সম্পদ পরিষ্কার করা এবং ভেরিয়েবল মান পুনরায় সেট করা অন্তর্ভুক্ত | [শেষ করার শর্ত](./6-space-game/6-end-condition/README.md) | ক্রিস | -| 21 | [ব্যাংকিং অ্যাপ](./7-bank-project/solution/README.md) | HTML টেমপ্লেট এবং ওয়েব অ্যাপে রুট | রাউটিং এবং HTML টেমপ্লেট ব্যবহার করে একটি মাল্টিপেজ ওয়েবসাইটের আর্কিটেকচার তৈরি করার পদ্ধতি শিখুন | [HTML টেমপ্লেট এবং রুট](./7-bank-project/1-template-route/README.md) | ইয়োহান | -| 22 | [ব্যাংকিং অ্যাপ](./7-bank-project/solution/README.md) | লগইন এবং রেজিস্ট্রেশন ফর্ম তৈরি | ফর্ম তৈরি এবং ভ্যালিডেশন রুটিন পরিচালনা করার পদ্ধতি শিখুন | [ফর্ম](./7-bank-project/2-forms/README.md) | ইয়োহান | -| 23 | [ব্যাংকিং অ্যাপ](./7-bank-project/solution/README.md) | ডেটা সংগ্রহ এবং ব্যবহারের পদ্ধতি | আপনার অ্যাপে ডেটা কীভাবে প্রবাহিত হয়, কীভাবে এটি সংগ্রহ, সংরক্ষণ এবং নিষ্পত্তি করা যায় | [ডেটা](./7-bank-project/3-data/README.md) | ইয়োহান | -| 24 | [ব্যাংকিং অ্যাপ](./7-bank-project/solution/README.md) | স্টেট ম্যানেজমেন্টের ধারণা | আপনার অ্যাপ কীভাবে স্টেট ধরে রাখে এবং কীভাবে এটি প্রোগ্রাম্যাটিকভাবে পরিচালনা করা যায় তা শিখুন | [স্টেট ম্যানেজমেন্ট](./7-bank-project/4-state-management/README.md) | ইয়োহান | -| 25 | [ব্রাউজার/VS কোড](../../8-code-editor) | VS কোডের সাথে কাজ করা | কোড এডিটর ব্যবহার করার পদ্ধতি শিখুন| [VS কোড এডিটর ব্যবহার করুন](./8-code-editor/1-using-a-code-editor/README.md) | ক্রিস | -| 26 | [AI অ্যাসিস্ট্যান্ট](./9-chat-project/README.md) | AI এর সাথে কাজ করা | নিজের AI অ্যাসিস্ট্যান্ট তৈরি করার পদ্ধতি শিখুন | [AI অ্যাসিস্ট্যান্ট প্রকল্প](./9-chat-project/README.md) | ক্রিস | +| 01 | শুরু করা | প্রোগ্রামিং এবং টুলসের পরিচিতি | বেশিরভাগ প্রোগ্রামিং ভাষার মৌলিক ভিত্তি এবং পেশাদার ডেভেলপারদের কাজের জন্য সহায়ক সফটওয়্যার সম্পর্কে জানুন | [প্রোগ্রামিং ভাষা এবং টুলসের পরিচিতি](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine | +| 02 | শুরু করা | GitHub-এর মৌলিক বিষয়, দল নিয়ে কাজ করা | আপনার প্রকল্পে GitHub কীভাবে ব্যবহার করবেন, কোড বেসে অন্যদের সাথে সহযোগিতা করবেন | [GitHub-এর পরিচিতি](./1-getting-started-lessons/2-github-basics/README.md) | Floor | +| 03 | শুরু করা | অ্যাক্সেসিবিলিটি | ওয়েব অ্যাক্সেসিবিলিটির মৌলিক বিষয়গুলি শিখুন | [অ্যাক্সেসিবিলিটির মৌলিক বিষয়](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | +| 04 | JS মৌলিক বিষয় | জাভাস্ক্রিপ্ট ডেটা টাইপ | জাভাস্ক্রিপ্ট ডেটা টাইপের মৌলিক বিষয়গুলি | [ডেটা টাইপ](./2-js-basics/1-data-types/README.md) | Jasmine | +| 05 | JS মৌলিক বিষয় | ফাংশন এবং মেথড | অ্যাপ্লিকেশনের লজিক প্রবাহ পরিচালনা করতে ফাংশন এবং মেথড সম্পর্কে জানুন | [ফাংশন এবং মেথড](./2-js-basics/2-functions-methods/README.md) | Jasmine এবং Christopher | +| 06 | JS মৌলিক বিষয় | জাভাস্ক্রিপ্ট দিয়ে সিদ্ধান্ত নেওয়া | সিদ্ধান্ত নেওয়ার পদ্ধতি ব্যবহার করে আপনার কোডে শর্ত তৈরি করতে শিখুন | [সিদ্ধান্ত নেওয়া](./2-js-basics/3-making-decisions/README.md) | Jasmine | +| 07 | JS মৌলিক বিষয় | অ্যারে এবং লুপ | জাভাস্ক্রিপ্টে অ্যারে এবং লুপ ব্যবহার করে ডেটা নিয়ে কাজ করুন | [অ্যারে এবং লুপ](./2-js-basics/4-arrays-loops/README.md) | Jasmine | +| 08 | [টেরারিয়াম](./3-terrarium/solution/README.md) | HTML অনুশীলনে | একটি অনলাইন টেরারিয়াম তৈরি করতে HTML তৈরি করুন, লেআউট তৈরি করার উপর ফোকাস | [HTML-এর পরিচিতি](./3-terrarium/1-intro-to-html/README.md) | Jen | +| 09 | [টেরারিয়াম](./3-terrarium/solution/README.md) | CSS অনুশীলনে | অনলাইন টেরারিয়াম স্টাইল করতে CSS তৈরি করুন, CSS-এর মৌলিক বিষয়গুলির উপর ফোকাস সহ পৃষ্ঠাকে রেসপন্সিভ করুন | [CSS-এর পরিচিতি](./3-terrarium/2-intro-to-css/README.md) | Jen | +| 10 | [টেরারিয়াম](./3-terrarium/solution/README.md) | জাভাস্ক্রিপ্ট ক্লোজার, DOM ম্যানিপুলেশন | টেরারিয়ামকে একটি ড্র্যাগ/ড্রপ ইন্টারফেস হিসাবে কার্যকর করতে জাভাস্ক্রিপ্ট তৈরি করুন, ক্লোজার এবং DOM ম্যানিপুলেশনের উপর ফোকাস | [জাভাস্ক্রিপ্ট ক্লোজার, DOM ম্যানিপুলেশন](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | +| 11 | [টাইপিং গেম](./4-typing-game/solution/README.md) | টাইপিং গেম তৈরি করুন | কীবোর্ড ইভেন্ট ব্যবহার করে আপনার জাভাস্ক্রিপ্ট অ্যাপের লজিক চালানোর পদ্ধতি শিখুন | [ইভেন্ট-চালিত প্রোগ্রামিং](./4-typing-game/typing-game/README.md) | Christopher | +| 12 | [গ্রিন ব্রাউজার এক্সটেনশন](./5-browser-extension/solution/README.md) | ব্রাউজার নিয়ে কাজ | ব্রাউজার কীভাবে কাজ করে, তাদের ইতিহাস এবং একটি ব্রাউজার এক্সটেনশনের প্রথম উপাদানগুলি তৈরি করার পদ্ধতি শিখুন | [ব্রাউজার সম্পর্কে](./5-browser-extension/1-about-browsers/README.md) | Jen | +| 13 | [গ্রিন ব্রাউজার এক্সটেনশন](./5-browser-extension/solution/README.md) | একটি ফর্ম তৈরি করা, একটি API কল করা এবং লোকাল স্টোরেজে ভেরিয়েবল সংরক্ষণ করা | লোকাল স্টোরেজে সংরক্ষিত ভেরিয়েবল ব্যবহার করে একটি API কল করতে আপনার ব্রাউজার এক্সটেনশনের জাভাস্ক্রিপ্ট উপাদান তৈরি করুন | [API, ফর্ম এবং লোকাল স্টোরেজ](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | +| 14 | [গ্রিন ব্রাউজার এক্সটেনশন](./5-browser-extension/solution/README.md) | ব্রাউজারের ব্যাকগ্রাউন্ড প্রসেস, ওয়েব পারফরম্যান্স | এক্সটেনশনের আইকন পরিচালনা করতে ব্রাউজারের ব্যাকগ্রাউন্ড প্রসেস ব্যবহার করুন; ওয়েব পারফরম্যান্স এবং কিছু অপ্টিমাইজেশন সম্পর্কে জানুন | [ব্যাকগ্রাউন্ড টাস্ক এবং পারফরম্যান্স](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | +| 15 | [স্পেস গেম](./6-space-game/solution/README.md) | জাভাস্ক্রিপ্ট দিয়ে আরও উন্নত গেম ডেভেলপমেন্ট | ক্লাস এবং কম্পোজিশন ব্যবহার করে ইনহেরিটেন্স এবং পাব/সাব প্যাটার্ন সম্পর্কে জানুন, একটি গেম তৈরি করার প্রস্তুতি হিসাবে | [উন্নত গেম ডেভেলপমেন্টের পরিচিতি](./6-space-game/1-introduction/README.md) | Chris | +| 16 | [স্পেস গেম](./6-space-game/solution/README.md) | ক্যানভাসে আঁকা | ক্যানভাস API সম্পর্কে জানুন, যা স্ক্রিনে উপাদান আঁকতে ব্যবহৃত হয় | [ক্যানভাসে আঁকা](./6-space-game/2-drawing-to-canvas/README.md) | Chris | +| 17 | [স্পেস গেম](./6-space-game/solution/README.md) | স্ক্রিনে উপাদান সরানো | কার্টেসিয়ান কোঅর্ডিনেট এবং ক্যানভাস API ব্যবহার করে উপাদান কীভাবে গতি অর্জন করতে পারে তা আবিষ্কার করুন | [উপাদান সরানো](./6-space-game/3-moving-elements-around/README.md) | Chris | +| 18 | [স্পেস গেম](./6-space-game/solution/README.md) | সংঘর্ষ সনাক্তকরণ | কীপ্রেস ব্যবহার করে উপাদানগুলিকে একে অপরের সাথে সংঘর্ষ করতে এবং প্রতিক্রিয়া জানাতে তৈরি করুন এবং গেমের পারফরম্যান্স নিশ্চিত করতে একটি কুলডাউন ফাংশন প্রদান করুন | [সংঘর্ষ সনাক্তকরণ](./6-space-game/4-collision-detection/README.md) | Chris | +| 19 | [স্পেস গেম](./6-space-game/solution/README.md) | স্কোর রাখা | গেমের অবস্থা এবং পারফরম্যান্সের উপর ভিত্তি করে গাণিতিক হিসাব করুন | [স্কোর রাখা](./6-space-game/5-keeping-score/README.md) | Chris | +| 20 | [স্পেস গেম](./6-space-game/solution/README.md) | গেম শেষ করা এবং পুনরায় শুরু করা | গেম শেষ করা এবং পুনরায় শুরু করার পদ্ধতি শিখুন, যার মধ্যে অ্যাসেট পরিষ্কার করা এবং ভেরিয়েবল মান পুনরায় সেট করা অন্তর্ভুক্ত | [শেষ করার শর্ত](./6-space-game/6-end-condition/README.md) | Chris | +| 21 | [ব্যাংকিং অ্যাপ](./7-bank-project/solution/README.md) | একটি ওয়েব অ্যাপে HTML টেমপ্লেট এবং রুট | রাউটিং এবং HTML টেমপ্লেট ব্যবহার করে একটি মাল্টিপেজ ওয়েবসাইটের আর্কিটেকচার তৈরি করার কাঠামো তৈরি করার পদ্ধতি শিখুন | [HTML টেমপ্লেট এবং রুট](./7-bank-project/1-template-route/README.md) | Yohan | +| 22 | [ব্যাংকিং অ্যাপ](./7-bank-project/solution/README.md) | একটি লগইন এবং রেজিস্ট্রেশন ফর্ম তৈরি করুন | ফর্ম তৈরি এবং ভ্যালিডেশন রুটিন পরিচালনা সম্পর্কে জানুন | [ফর্ম](./7-bank-project/2-forms/README.md) | Yohan | +| 23 | [ব্যাংকিং অ্যাপ](./7-bank-project/solution/README.md) | ডেটা সংগ্রহ এবং ব্যবহারের পদ্ধতি | আপনার অ্যাপে ডেটা কীভাবে প্রবাহিত হয়, কীভাবে এটি সংগ্রহ করবেন, সংরক্ষণ করবেন এবং নিষ্পত্তি করবেন | [ডেটা](./7-bank-project/3-data/README.md) | Yohan | +| 24 | [ব্যাংকিং অ্যাপ](./7-bank-project/solution/README.md) | স্টেট ম্যানেজমেন্টের ধারণা | আপনার অ্যাপ কীভাবে স্টেট ধরে রাখে এবং কীভাবে এটি প্রোগ্রাম্যাটিকভাবে পরিচালনা করবেন তা শিখুন | [স্টেট ম্যানেজমেন্ট](./7-bank-project/4-state-management/README.md) | Yohan | +| 25 | [ব্রাউজার/VScode কোড](../../8-code-editor) | VScode নিয়ে কাজ | কোড এডিটর ব্যবহার করা শিখুন| [VScode কোড এডিটর ব্যবহার করুন](./8-code-editor/1-using-a-code-editor/README.md) | Chris | +| 26 | [AI অ্যাসিস্ট্যান্ট](./9-chat-project/README.md) | AI নিয়ে কাজ | নিজের AI অ্যাসিস্ট্যান্ট তৈরি করা শিখুন | [AI অ্যাসিস্ট্যান্ট প্রকল্প](./9-chat-project/README.md) | Chris | ## 🏫 শিক্ষাদান পদ্ধতি -আমাদের পাঠ্যক্রম দুটি মূল শিক্ষাদান পদ্ধতির উপর ভিত্তি করে তৈরি: +আমাদের পাঠ্যক্রম দুটি মূল শিক্ষাদান নীতির উপর ভিত্তি করে তৈরি: * প্রকল্প-ভিত্তিক শিক্ষা * ঘন ঘন কুইজ -এই প্রোগ্রামটি জাভাস্ক্রিপ্ট, HTML এবং CSS এর মৌলিক বিষয়গুলো শেখায়, পাশাপাশি বর্তমান ওয়েব ডেভেলপারদের ব্যবহৃত সর্বশেষ টুল এবং কৌশলগুলোও শেখায়। শিক্ষার্থীরা টাইপিং গেম, ভার্চুয়াল টেরারিয়াম, পরিবেশবান্ধব ব্রাউজার এক্সটেনশন, স্পেস-ইনভেডার-স্টাইল গেম এবং ব্যবসার জন্য একটি ব্যাংকিং অ্যাপ তৈরি করে হাতে-কলমে অভিজ্ঞতা অর্জনের সুযোগ পাবে। সিরিজের শেষে, শিক্ষার্থীরা ওয়েব ডেভেলপমেন্ট সম্পর্কে একটি শক্ত ভিত্তি অর্জন করবে। +এই প্রোগ্রামটি জাভাস্ক্রিপ্ট, HTML এবং CSS-এর মৌলিক বিষয়গুলি শেখায়, পাশাপাশি আজকের ওয়েব ডেভেলপারদের ব্যবহৃত সর্বশেষ টুল এবং কৌশলগুলি। শিক্ষার্থীরা টাইপিং গেম, ভার্চুয়াল টেরারিয়াম, পরিবেশবান্ধব ব্রাউজার এক্সটেনশন, স্পেস-ইনভেডার-স্টাইল গেম এবং ব্যবসার জন্য একটি ব্যাংকিং অ্যাপ তৈরি করে হাতে-কলমে অভিজ্ঞতা অর্জনের সুযোগ পাবে। সিরিজের শেষে, শিক্ষার্থীরা ওয়েব ডেভেলপমেন্ট সম্পর্কে একটি শক্তিশালী ধারণা অর্জন করবে। -> 🎓 আপনি এই পাঠ্যক্রমের প্রথম কয়েকটি পাঠ [Microsoft Learn](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) এ একটি [Learn Path](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) হিসেবে নিতে পারেন! +> 🎓 আপনি এই পাঠ্যক্রমের প্রথম কয়েকটি পাঠ [Learn Path](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) হিসেবে Microsoft Learn-এ নিতে পারেন! -পাঠ্যক্রমটি প্রকল্পের সাথে সামঞ্জস্য রেখে তৈরি করার মাধ্যমে শিক্ষার্থীদের জন্য প্রক্রিয়াটি আরও আকর্ষণীয় করা হয়েছে এবং ধারণাগুলোর সংরক্ষণ ক্ষমতা বৃদ্ধি পাবে। আমরা জাভাস্ক্রিপ্ট বেসিকের উপর কয়েকটি স্টার্টার পাঠ লিখেছি ধারণাগুলো পরিচিত করানোর জন্য, যা "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" ভিডিও টিউটোরিয়াল সংগ্রহের একটি ভিডিওর সাথে যুক্ত, যার কিছু লেখক এই পাঠ্যক্রমে অবদান রেখেছেন। +প্রকল্পের সাথে সামঞ্জস্য রেখে বিষয়বস্তু নিশ্চিত করার মাধ্যমে শিক্ষার্থীদের জন্য প্রক্রিয়াটি আরও আকর্ষণীয় করা হয়েছে এবং ধারণার ধারণক্ষমতা বৃদ্ধি পাবে। আমরা জাভাস্ক্রিপ্টের মৌলিক বিষয়গুলি পরিচিত করার জন্য কয়েকটি স্টার্টার পাঠ লিখেছি, যা "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" ভিডিও টিউটোরিয়াল সংগ্রহের একটি ভিডিওর সাথে যুক্ত, যার কিছু লেখক এই পাঠ্যক্রমে অবদান রেখেছেন। -এছাড়াও, ক্লাসের আগে একটি কম ঝুঁকির কুইজ শিক্ষার্থীর একটি বিষয়ের প্রতি মনোযোগ স্থাপন করে, এবং ক্লাসের পরে একটি দ্বিতীয় কুইজ আরও ধারণা সংরক্ষণ নিশ্চিত করে। এই পাঠ্যক্রমটি নমনীয় এবং মজাদারভাবে ডিজাইন করা হয়েছে এবং এটি সম্পূর্ণ বা আংশিকভাবে নেওয়া যেতে পারে। প্রকল্পগুলো ছোট থেকে শুরু করে এবং ১২ সপ্তাহের চক্রের শেষে ক্রমশ জটিল হয়ে ওঠে। +এছাড়াও, একটি ক্লাসের আগে একটি কম ঝুঁকির কুইজ শিক্ষার্থীর একটি বিষয় শেখার উদ্দেশ্য নির্ধারণ করে, যখন ক্লাসের পরে একটি দ্বিতীয় কুইজ আরও ধারণক্ষমতা নিশ্চিত করে। এই পাঠ্যক্রমটি নমনীয় এবং মজাদার হতে ডিজাইন করা হয়েছে এবং সম্পূর্ণ বা আংশিকভাবে নেওয়া যেতে পারে। প্রকল্পগুলি ছোট থেকে শুরু হয় এবং ১২-সপ্তাহের চক্রের শেষে ক্রমশ জটিল হয়ে ওঠে। -যদিও আমরা জাভাস্ক্রিপ্ট ফ্রেমওয়ার্কগুলো পরিচিত করানো থেকে ইচ্ছাকৃতভাবে বিরত থেকেছি, একটি ফ্রেমওয়ার্ক গ্রহণ করার আগে একজন ওয়েব ডেভেলপার হিসেবে প্রয়োজনীয় মৌলিক দক্ষতাগুলো শেখানোর জন্য, এই পাঠ্যক্রমটি সম্পন্ন করার পর একটি ভালো পরবর্তী পদক্ষেপ হতে পারে Node.js সম্পর্কে শেখা, যা আরেকটি ভিডিও সংগ্রহে পাওয়া যাবে: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)"। +যদিও আমরা জাভাস্ক্রিপ্ট ফ্রেমওয়ার্কগুলি পরিচয় করানোর বিষয়টি এড়িয়ে গেছি, ওয়েব ডেভেলপার হিসাবে একটি ফ্রেমওয়ার্ক গ্রহণ করার আগে প্রয়োজনীয় মৌলিক দক্ষতার উপর মনোযোগ কেন্দ্রীভূত করতে, এই পাঠ্যক্রমটি সম্পন্ন করার একটি ভাল পরবর্তী পদক্ষেপ হবে Node.js সম্পর্কে শেখা, একটি ভিডিও সংগ্রহের মাধ্যমে: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)"। > আমাদের [Code of Conduct](CODE_OF_CONDUCT.md) এবং [Contributing](CONTRIBUTING.md) নির্দেশিকা দেখুন। আমরা আপনার গঠনমূলক মতামতকে স্বাগত জানাই! ## 🧭 অফলাইন অ্যাক্সেস -আপনি [Docsify](https://docsify.js.org/#/) ব্যবহার করে এই ডকুমেন্টেশনটি অফলাইনে চালাতে পারেন। এই রিপোটি ফর্ক করুন, আপনার লোকাল মেশিনে [Docsify ইনস্টল করুন](https://docsify.js.org/#/quickstart), এবং তারপর এই রিপোর রুট ফোল্ডারে `docsify serve` টাইপ করুন। ওয়েবসাইটটি আপনার লোকালহোস্টে পোর্ট ৩০০০-এ পরিবেশন করা হবে: `localhost:3000`। +আপনি [Docsify](https://docsify.js.org/#/) ব্যবহার করে এই ডকুমেন্টেশনটি অফলাইনে চালাতে পারেন। এই রিপোটি ফর্ক করুন, আপনার লোকাল মেশিনে [Docsify ইনস্টল করুন](https://docsify.js.org/#/quickstart), এবং তারপর এই রিপোর রুট ফোল্ডারে `docsify serve` টাইপ করুন। ওয়েবসাইটটি আপনার লোকালহোস্টে পোর্ট ৩০০০-এ পরিবেশন করা হবে: `localhost:3000`। -## 📘 পিডিএফ +## 📘 PDF -সমস্ত পাঠের একটি পিডিএফ [এখানে](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf) পাওয়া যাবে। +সমস্ত পাঠের একটি PDF [এখানে](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf) পাওয়া যাবে। ## 🎒 অন্যান্য কোর্স -আমাদের টিম অন্যান্য কোর্সও তৈরি করে! দেখুন: +আমাদের দল অন্যান্য কোর্স তৈরি করে! দেখুন: - ### Azure / Edge / MCP / Agents [![AZD for Beginners](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst) -[![শুরুর জন্য Edge AI](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst) -[![শুরুর জন্য MCP](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst) -[![শুরুর জন্য AI এজেন্ট](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst) +[![এজ এআই ফর বিগিনারস](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst) +[![এমসিপি ফর বিগিনারস](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst) +[![এআই এজেন্টস ফর বিগিনারস](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst) --- -### জেনারেটিভ AI সিরিজ -[![শুরুর জন্য জেনারেটিভ AI](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst) -[![জেনারেটিভ AI (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst) -[![জেনারেটিভ AI (জাভা)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst) -[![জেনারেটিভ AI (জাভাস্ক্রিপ্ট)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst) +### জেনারেটিভ এআই সিরিজ +[![জেনারেটিভ এআই ফর বিগিনারস](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst) +[![জেনারেটিভ এআই (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst) +[![জেনারেটিভ এআই (জাভা)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst) +[![জেনারেটিভ এআই (জাভাস্ক্রিপ্ট)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst) --- -### মূল শিক্ষামূলক কোর্স -[![শুরুর জন্য ML](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst) -[![শুরুর জন্য ডেটা সায়েন্স](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst) -[![শুরুর জন্য AI](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst) -[![শুরুর জন্য সাইবার সিকিউরিটি](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung) -[![শুরুর জন্য ওয়েব ডেভেলপমেন্ট](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst) -[![শুরুর জন্য IoT](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst) -[![শুরুর জন্য XR ডেভেলপমেন্ট](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst) +### মূল শিক্ষামূলক কোর্স +[![এমএল ফর বিগিনারস](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst) +[![ডেটা সায়েন্স ফর বিগিনারস](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst) +[![এআই ফর বিগিনারস](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst) +[![সাইবারসিকিউরিটি ফর বিগিনারস](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung) +[![ওয়েব ডেভেলপমেন্ট ফর বিগিনারস](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst) +[![আইওটি ফর বিগিনারস](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst) +[![এক্সআর ডেভেলপমেন্ট ফর বিগিনারস](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst) --- -### কপাইলট সিরিজ -[![AI পেয়ারড প্রোগ্রামিংয়ের জন্য কপাইলট](https://img.shields.io/badge/Copilot%20for%20AI%20Paired%20Programming-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst) -[![C#/.NET এর জন্য কপাইলট](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst) -[![কপাইলট অ্যাডভেঞ্চার](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst) - +### কোপাইলট সিরিজ +[![কোপাইলট ফর এআই পেয়ারড প্রোগ্রামিং](https://img.shields.io/badge/Copilot%20for%20AI%20Paired%20Programming-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst) +[![কোপাইলট ফর C#/.NET](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst) +[![কোপাইলট অ্যাডভেঞ্চার](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst) -## সাহায্য পাওয়ার উপায় +## সাহায্য পাওয়া -যদি আপনি আটকে যান বা AI অ্যাপ তৈরি করার বিষয়ে কোনো প্রশ্ন থাকে, তাহলে যোগ দিন: +যদি আপনি আটকে যান বা এআই অ্যাপ তৈরি করার বিষয়ে কোনো প্রশ্ন থাকে, এমসিপি নিয়ে আলোচনা করতে অন্যান্য শিক্ষার্থী এবং অভিজ্ঞ ডেভেলপারদের সাথে যোগ দিন। এটি একটি সহায়ক কমিউনিটি যেখানে প্রশ্ন করা স্বাগত এবং জ্ঞান বিনামূল্যে ভাগ করা হয়। -[![Azure AI Foundry Discord](https://img.shields.io/badge/Discord-Azure_AI_Foundry_Community_Discord-blue?style=for-the-badge&logo=discord&color=5865f2&logoColor=fff)](https://aka.ms/foundry/discord) +[![মাইক্রোসফট ফাউন্ড্রি ডিসকর্ড](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) -যদি কোনো পণ্য সম্পর্কিত মতামত বা ত্রুটি থাকে, তাহলে ভিজিট করুন: +যদি কোনো পণ্য সম্পর্কিত মতামত বা ত্রুটি থাকে, তাহলে এখানে যান: -[![Azure AI Foundry Developer Forum](https://img.shields.io/badge/GitHub-Azure_AI_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) +[![মাইক্রোসফট ফাউন্ড্রি ডেভেলপার ফোরাম](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) -## লাইসেন্স +## লাইসেন্স -এই রিপোজিটরি MIT লাইসেন্সের অধীনে লাইসেন্সকৃত। আরও তথ্যের জন্য [LICENSE](../../LICENSE) ফাইলটি দেখুন। +এই রিপোজিটরি MIT লাইসেন্সের অধীনে লাইসেন্সকৃত। আরও তথ্যের জন্য [LICENSE](../../LICENSE) ফাইলটি দেখুন। --- + **অস্বীকৃতি**: -এই নথিটি AI অনুবাদ পরিষেবা [Co-op Translator](https://github.com/Azure/co-op-translator) ব্যবহার করে অনুবাদ করা হয়েছে। আমরা যথাসাধ্য সঠিকতার জন্য চেষ্টা করি, তবে অনুগ্রহ করে মনে রাখবেন যে স্বয়ংক্রিয় অনুবাদে ত্রুটি বা অসঙ্গতি থাকতে পারে। মূল ভাষায় থাকা নথিটিকে প্রামাণিক উৎস হিসেবে বিবেচনা করা উচিত। গুরুত্বপূর্ণ তথ্যের জন্য, পেশাদার মানব অনুবাদ সুপারিশ করা হয়। এই অনুবাদ ব্যবহারের ফলে কোনো ভুল বোঝাবুঝি বা ভুল ব্যাখ্যা হলে আমরা দায়বদ্ধ থাকব না। \ No newline at end of file +এই নথিটি AI অনুবাদ পরিষেবা [Co-op Translator](https://github.com/Azure/co-op-translator) ব্যবহার করে অনুবাদ করা হয়েছে। আমরা যথাসাধ্য সঠিক অনুবাদের চেষ্টা করি, তবে দয়া করে মনে রাখবেন যে স্বয়ংক্রিয় অনুবাদে ত্রুটি বা অসঙ্গতি থাকতে পারে। নথিটির মূল ভাষায় থাকা সংস্করণটিকে প্রামাণিক উৎস হিসেবে বিবেচনা করা উচিত। গুরুত্বপূর্ণ তথ্যের জন্য, পেশাদার মানব অনুবাদ সুপারিশ করা হয়। এই অনুবাদ ব্যবহারের ফলে সৃষ্ট কোনো ভুল বোঝাবুঝি বা ভুল ব্যাখ্যার জন্য আমরা দায়ী নই। + \ No newline at end of file diff --git a/translations/br/1-getting-started-lessons/2-github-basics/README.md b/translations/br/1-getting-started-lessons/2-github-basics/README.md index 1a4f3fe9..085e0aff 100644 --- a/translations/br/1-getting-started-lessons/2-github-basics/README.md +++ b/translations/br/1-getting-started-lessons/2-github-basics/README.md @@ -1,19 +1,19 @@ # Introdução ao GitHub -Olá, futuro desenvolvedor! 👋 Pronto para se juntar a milhões de programadores ao redor do mundo? Estou genuinamente empolgado para te apresentar ao GitHub – pense nele como uma rede social para programadores, mas em vez de compartilhar fotos do seu almoço, compartilhamos código e construímos coisas incríveis juntos! +Olá, futuro desenvolvedor! 👋 Pronto para se juntar a milhões de programadores ao redor do mundo? Estou genuinamente animado para apresentar o GitHub a você – pense nele como uma rede social para programadores, mas em vez de compartilhar fotos do seu almoço, compartilhamos código e construímos coisas incríveis juntos! Aqui está algo que me deixa impressionado: todos os aplicativos no seu celular, todos os sites que você visita e a maioria das ferramentas que você aprenderá a usar foram criados por equipes de desenvolvedores colaborando em plataformas como o GitHub. Aquele aplicativo de música que você adora? Alguém como você contribuiu para ele. Aquele jogo que você não consegue parar de jogar? Sim, provavelmente foi construído com colaboração no GitHub. E agora VOCÊ vai aprender como fazer parte dessa comunidade incrível! -Eu sei que isso pode parecer muita coisa no começo – eu mesmo lembro de olhar para minha primeira página no GitHub e pensar "O que tudo isso significa?". Mas aqui está o segredo: todo desenvolvedor começou exatamente onde você está agora. Até o final desta aula, você terá seu próprio repositório no GitHub (pense nele como sua vitrine pessoal de projetos na nuvem) e saberá como salvar seu trabalho, compartilhá-lo com outros e até contribuir para projetos que milhões de pessoas usam. +Eu sei que isso pode parecer muito no começo – eu mesmo lembro de olhar para minha primeira página no GitHub e pensar "O que tudo isso significa?". Mas aqui está o segredo: todo desenvolvedor começou exatamente onde você está agora. Até o final desta lição, você terá seu próprio repositório no GitHub (pense nele como sua vitrine pessoal de projetos na nuvem) e saberá como salvar seu trabalho, compartilhá-lo com outros e até contribuir para projetos que milhões de pessoas usam. Vamos embarcar nessa jornada juntos, passo a passo. Sem pressa, sem pressão – apenas você, eu e algumas ferramentas muito legais que estão prestes a se tornar suas melhores amigas! @@ -22,21 +22,20 @@ Vamos embarcar nessa jornada juntos, passo a passo. Sem pressa, sem pressão – ```mermaid journey - title Your GitHub Adventure Today - section Setup - Install Git: 4: You - Create Account: 5: You - First Repository: 5: You - section Master Git - Local Changes: 4: You - Commits & Pushes: 5: You - Branching: 4: You - section Collaborate - Fork Projects: 4: You - Pull Requests: 5: You - Open Source: 5: You + title Sua Aventura no GitHub Hoje + section Configuração + Instalar Git: 4: Você + Criar Conta: 5: Você + Primeiro Repositório: 5: Você + section Dominar o Git + Alterações Locais: 4: Você + Commits & Pushes: 5: Você + Ramificação: 4: Você + section Colaborar + Fazer Fork de Projetos: 4: Você + Pull Requests: 5: Você + Código Aberto: 5: Você ``` - ## Quiz Pré-Aula [Quiz pré-aula](https://ff-quizzes.netlify.app) @@ -44,9 +43,9 @@ journey Antes de mergulharmos nas partes realmente empolgantes, vamos preparar seu computador para um pouco de mágica do GitHub! Pense nisso como organizar seus materiais de arte antes de criar uma obra-prima – ter as ferramentas certas prontas torna tudo muito mais fácil e divertido. -Vou te guiar por cada etapa de configuração pessoalmente, e prometo que não é tão intimidador quanto pode parecer à primeira vista. Se algo não fizer sentido de imediato, isso é completamente normal! Eu lembro de configurar meu primeiro ambiente de desenvolvimento e sentir como se estivesse tentando decifrar hieróglifos antigos. Todo desenvolvedor já esteve exatamente onde você está agora, se perguntando se está fazendo certo. Spoiler: se você está aqui aprendendo, já está fazendo certo! 🌟 +Vou te guiar por cada etapa de configuração pessoalmente, e prometo que não é tão intimidador quanto parece à primeira vista. Se algo não fizer sentido de imediato, isso é completamente normal! Eu lembro de configurar meu primeiro ambiente de desenvolvimento e sentir como se estivesse tentando decifrar hieróglifos antigos. Todo desenvolvedor já esteve exatamente onde você está agora, se perguntando se está fazendo certo. Spoiler: se você está aqui aprendendo, já está fazendo certo! 🌟 -Nesta aula, vamos abordar: +Nesta lição, vamos abordar: - como rastrear o trabalho que você faz no seu computador - como trabalhar em projetos com outras pessoas @@ -56,9 +55,9 @@ Nesta aula, vamos abordar: Vamos preparar seu computador para um pouco de mágica do GitHub! Não se preocupe – essa configuração é algo que você só precisa fazer uma vez, e depois estará pronto para toda a sua jornada de programação. -Tudo bem, vamos começar com a base! Primeiro, precisamos verificar se o Git já está instalado no seu computador. O Git é basicamente como ter um assistente superinteligente que lembra de cada mudança que você faz no seu código – muito melhor do que apertar Ctrl+S freneticamente a cada dois segundos (todos já passamos por isso!). +Certo, vamos começar com a base! Primeiro, precisamos verificar se o Git já está instalado no seu computador. O Git é basicamente como ter um assistente superinteligente que lembra de cada mudança que você faz no seu código – muito melhor do que apertar Ctrl+S freneticamente a cada dois segundos (todos já passamos por isso!). -Vamos ver se o Git já está instalado digitando este comando mágico no seu terminal: +Vamos ver se o Git já está instalado digitando este comando mágico no terminal: `git --version` Se o Git ainda não estiver lá, sem problemas! Basta acessar [download Git](https://git-scm.com/downloads) e baixá-lo. Depois de instalá-lo, precisamos apresentar o Git a você adequadamente: @@ -85,13 +84,13 @@ Acesse [github.com](https://github.com/) e crie uma conta, se ainda não tiver u ### Preparação -Você precisará de uma pasta com um projeto de código no seu computador (notebook ou PC) e de um repositório público no GitHub, que servirá como exemplo de como contribuir para os projetos de outras pessoas. +Você precisará de uma pasta com um projeto de código no seu computador (laptop ou PC) e de um repositório público no GitHub, que servirá como exemplo de como contribuir para os projetos de outras pessoas. ### Mantendo Seu Código Seguro -Vamos falar sobre segurança por um momento – mas não se preocupe, não vamos te sobrecarregar com coisas assustadoras! Pense nessas práticas de segurança como trancar seu carro ou sua casa. São hábitos simples que se tornam automáticos e mantêm seu trabalho protegido. +Vamos falar sobre segurança por um momento – mas não se preocupe, não vamos te sobrecarregar com coisas assustadoras! Pense nessas práticas de segurança como trancar seu carro ou sua casa. São hábitos simples que se tornam naturais e mantêm seu trabalho protegido. -Vamos te mostrar as formas modernas e seguras de trabalhar com o GitHub desde o início. Assim, você desenvolverá bons hábitos que te servirão bem ao longo da sua carreira de programação. +Vamos mostrar as maneiras modernas e seguras de trabalhar com o GitHub desde o início. Assim, você desenvolverá bons hábitos que serão úteis ao longo de sua carreira de programação. Ao trabalhar com o GitHub, é importante seguir as melhores práticas de segurança: @@ -107,10 +106,10 @@ Ao trabalhar com o GitHub, é importante seguir as melhores práticas de seguran **Configuração Moderna de Autenticação:** ```bash -# Generate SSH key (modern ed25519 algorithm) +# Gerar chave SSH (algoritmo moderno ed25519) ssh-keygen -t ed25519 -C "your_email@example.com" -# Set up Git to use SSH +# Configurar o Git para usar SSH git remote set-url origin git@github.com:username/repository.git ``` @@ -120,58 +119,57 @@ git remote set-url origin git@github.com:username/repository.git ## Gerenciando Seu Código Como um Profissional -Ok, AGORA é onde as coisas ficam realmente empolgantes! 🎉 Vamos aprender como rastrear e gerenciar seu código como os profissionais fazem, e honestamente, essa é uma das minhas coisas favoritas de ensinar porque é uma mudança de jogo. +Agora, é aqui que as coisas ficam realmente emocionantes! 🎉 Vamos aprender como rastrear e gerenciar seu código como os profissionais fazem, e honestamente, essa é uma das minhas coisas favoritas de ensinar porque é uma mudança de jogo. Imagine isso: você está escrevendo uma história incrível e quer acompanhar cada rascunho, cada edição brilhante e cada momento de "espera, isso é genial!" ao longo do caminho. É exatamente isso que o Git faz pelo seu código! É como ter o caderno mais incrível que viaja no tempo e lembra de TUDO – cada tecla pressionada, cada mudança, cada momento de "ops, isso quebrou tudo" que você pode desfazer instantaneamente. -Vou ser honesto – isso pode parecer um pouco demais no começo. Quando comecei, pensei "Por que não posso simplesmente salvar meus arquivos como sempre?". Mas confie em mim: uma vez que o Git fizer sentido para você (e vai!), você terá um daqueles momentos de lâmpada acesa em que pensa "Como eu CONSEGUI programar sem isso?". É como descobrir que você pode voar quando esteve andando por aí a vida toda! +Vou ser honesto – isso pode parecer esmagador no começo. Quando comecei, pensei "Por que não posso simplesmente salvar meus arquivos como de costume?". Mas confie em mim: uma vez que o Git fizer sentido para você (e vai!), você terá um daqueles momentos de lâmpada acesa em que pensa "Como eu CONSEGUIA programar sem isso?". É como descobrir que você pode voar quando estava andando por aí a vida toda! -Digamos que você tem uma pasta local com algum projeto de código e quer começar a rastrear seu progresso usando o git – o sistema de controle de versão. Algumas pessoas comparam usar o git a escrever uma carta de amor para seu futuro eu. Ao ler suas mensagens de commit dias, semanas ou meses depois, você será capaz de lembrar por que tomou uma decisão ou "reverter" uma mudança – isso é, quando você escreve boas "mensagens de commit". +Digamos que você tenha uma pasta local com algum projeto de código e queira começar a rastrear seu progresso usando o git - o sistema de controle de versão. Algumas pessoas comparam usar git a escrever uma carta de amor para seu futuro eu. Ao ler suas mensagens de commit dias, semanas ou meses depois, você será capaz de lembrar por que tomou uma decisão ou "reverter" uma mudança – isso é, quando você escreve boas "mensagens de commit". ```mermaid flowchart TD - A[📁 Your Project Files] --> B{Is it a Git Repository?} - B -->|No| C[git init] - B -->|Yes| D[Make Changes] + A[📁 Seus Arquivos do Projeto] --> B{É um Repositório Git?} + B -->|Não| C[git init] + B -->|Sim| D[Fazer Alterações] C --> D D --> E[git add .] - E --> F["git commit -m 'message'"] + E --> F["git commit -m 'mensagem'"] F --> G[git push] - G --> H[🌟 Code on GitHub!] + G --> H[🌟 Código no GitHub!] - H --> I{Want to collaborate?} - I -->|Yes| J[Fork & Clone] - I -->|No| D - J --> K[Create Branch] - K --> L[Make Changes] + H --> I{Quer colaborar?} + I -->|Sim| J[Fork & Clone] + I -->|Não| D + J --> K[Criar Branch] + K --> L[Fazer Alterações] L --> M[Pull Request] - M --> N[🎉 Contributing!] + M --> N[🎉 Contribuindo!] style A fill:#fff59d style H fill:#c8e6c9 style N fill:#ff4081,color:#fff ``` - ### Tarefa: Crie Seu Primeiro Repositório! -> 🎯 **Sua Missão (e estou tão empolgado por você!)**: Vamos criar seu primeiro repositório no GitHub juntos! Quando terminarmos aqui, você terá seu próprio cantinho na internet onde seu código vive, e terá feito seu primeiro "commit" (isso é como os desenvolvedores chamam salvar seu trabalho de forma muito inteligente). +> 🎯 **Sua Missão (e estou tão animado por você!)**: Vamos criar seu primeiro repositório no GitHub juntos! Quando terminarmos aqui, você terá seu próprio cantinho na internet onde seu código vive, e terá feito seu primeiro "commit" (isso é como os desenvolvedores chamam salvar seu trabalho de uma maneira muito inteligente). > > Este é um momento realmente especial – você está prestes a se juntar oficialmente à comunidade global de desenvolvedores! Eu ainda lembro da emoção de criar meu primeiro repositório e pensar "Uau, eu realmente estou fazendo isso!" -Vamos passar por essa aventura juntos, passo a passo. Leve o tempo necessário em cada parte – não há prêmio por correr, e prometo que cada etapa fará sentido. Lembre-se, todo superastro da programação que você admira já esteve exatamente onde você está, prestes a criar seu primeiro repositório. Que incrível isso, não é? +Vamos percorrer essa aventura juntos, passo a passo. Leve seu tempo em cada parte – não há prêmio por apressar, e prometo que cada etapa fará sentido. Lembre-se, todo superastro da programação que você admira já esteve exatamente onde você está, prestes a criar seu primeiro repositório. Que incrível, né? > Confira o vídeo > -> [![Vídeo básico de Git e GitHub](https://img.youtube.com/vi/9R31OUPpxU4/0.jpg)](https://www.youtube.com/watch?v=9R31OUPpxU4) +> [![Vídeo básico sobre Git e GitHub](https://img.youtube.com/vi/9R31OUPpxU4/0.jpg)](https://www.youtube.com/watch?v=9R31OUPpxU4) **Vamos Fazer Isso Juntos:** -1. **Crie seu repositório no GitHub**. Acesse GitHub.com e procure aquele botão verde brilhante **New** (ou o sinal de **+** no canto superior direito). Clique nele e selecione **New repository**. +1. **Crie seu repositório no GitHub**. Acesse GitHub.com e procure aquele botão verde brilhante **New** (ou o sinal **+** no canto superior direito). Clique nele e selecione **New repository**. Aqui está o que fazer: 1. Dê um nome ao seu repositório – escolha algo significativo para você! 1. Adicione uma descrição, se quiser (isso ajuda os outros a entenderem sobre o que é seu projeto) - 1. Decida se quer que ele seja público (todos podem ver) ou privado (somente você) + 1. Decida se quer que ele seja público (todos podem ver) ou privado (apenas para você) 1. Recomendo marcar a caixa para adicionar um arquivo README – é como a página inicial do seu projeto 1. Clique em **Create repository** e comemore – você acabou de criar seu primeiro repositório! 🎉 @@ -248,10 +246,10 @@ Vamos passar por essa aventura juntos, passo a passo. Leve o tempo necessário e **Mudou de ideia?** Sem problemas! Você pode remover arquivos da preparação assim: ```bash - # Unstage everything + # Desfazer a preparação de tudo git reset - # Unstage just one file + # Desfazer a preparação de apenas um arquivo git reset [file name] ``` @@ -266,7 +264,7 @@ Vamos passar por essa aventura juntos, passo a passo. Leve o tempo necessário e **🎉 Parabéns! Você acabou de fazer seu primeiro commit!** **Aqui está o que acabou de acontecer:** - - O Git tirou um "instantâneo" de todos os seus arquivos preparados neste exato momento + - O Git tirou um "instantâneo" de todos os arquivos preparados neste exato momento - Sua mensagem de commit "first commit" explica sobre o que é este ponto de salvamento - O Git deu a este instantâneo um ID único para que você sempre possa encontrá-lo depois - Você oficialmente começou a rastrear o histórico do seu projeto! @@ -282,12 +280,13 @@ Vamos passar por essa aventura juntos, passo a passo. Leve o tempo necessário e ``` (Substitua essa URL pela URL real do seu repositório!) -**O que acabamos de fazer:** -- Criamos uma conexão entre seu projeto local e seu repositório no GitHub. -- "Origin" é apenas um apelido para o seu repositório no GitHub – é como adicionar um contato no seu celular. -- Agora seu Git local sabe para onde enviar seu código quando você estiver pronto para compartilhá-lo. -💡 **Forma mais fácil**: Se você tiver o GitHub CLI instalado, pode fazer isso com um único comando: + **O que acabamos de fazer:** + - Criamos uma conexão entre o seu projeto local e o seu repositório no GitHub + - "Origin" é apenas um apelido para o seu repositório no GitHub – é como adicionar um contato no seu telefone + - Agora o seu Git local sabe para onde enviar seu código quando você estiver pronto para compartilhá-lo + + 💡 **Forma mais fácil**: Se você tiver o GitHub CLI instalado, pode fazer isso com um único comando: ```bash gh repo create my-repo --public --push --source=. ``` @@ -298,19 +297,19 @@ Vamos passar por essa aventura juntos, passo a passo. Leve o tempo necessário e git push -u origin main ``` -**🚀 É isso! Você está enviando seu código para o GitHub!** - -**O que está acontecendo:** -- Seus commits estão viajando do seu computador para o GitHub. -- A flag `-u` configura uma conexão permanente para que futuros pushes sejam mais fáceis. -- "main" é o nome da sua branch principal (como a pasta principal). -- Depois disso, você pode simplesmente digitar `git push` para futuros uploads! + **🚀 É isso! Você está enviando seu código para o GitHub!** + + **O que está acontecendo:** + - Seus commits estão viajando do seu computador para o GitHub + - A flag `-u` configura uma conexão permanente para que futuros envios sejam mais fáceis + - "main" é o nome do seu branch principal (como a pasta principal) + - Depois disso, você pode simplesmente digitar `git push` para futuros uploads! -💡 **Nota rápida**: Se sua branch tiver outro nome (como "master"), use esse nome. Você pode verificar com `git branch --show-current`. + 💡 **Nota rápida**: Se o seu branch tiver outro nome (como "master"), use esse nome. Você pode verificar com `git branch --show-current`. 9. **Seu novo ritmo diário de codificação** (é aqui que fica viciante!): -De agora em diante, sempre que fizer alterações no seu projeto, você terá essa dança simples de três passos: + A partir de agora, sempre que você fizer alterações no seu projeto, você seguirá esta dança simples de três passos: ```bash git add . @@ -318,18 +317,18 @@ De agora em diante, sempre que fizer alterações no seu projeto, você terá es git push ``` -**Isso se torna o coração da sua codificação:** -- Faça algumas alterações incríveis no seu código ✨ -- Prepare-as com `git add` ("Ei Git, preste atenção nessas mudanças!") -- Salve-as com `git commit` e uma mensagem descritiva (seu futuro eu vai te agradecer!) -- Compartilhe com o mundo usando `git push` 🚀 -- Repita – sério, isso se torna tão natural quanto respirar! + **Isso se torna o coração da sua codificação:** + - Faça alterações incríveis no seu código ✨ + - Prepare-as com `git add` ("Ei Git, preste atenção nessas mudanças!") + - Salve-as com `git commit` e uma mensagem descritiva (o você do futuro vai te agradecer!) + - Compartilhe com o mundo usando `git push` 🚀 + - Repita – sério, isso se torna tão natural quanto respirar! -Eu amo esse fluxo de trabalho porque é como ter vários pontos de salvamento em um videogame. Fez uma alteração que você ama? Faça um commit! Quer tentar algo arriscado? Sem problemas – você sempre pode voltar ao seu último commit se algo der errado! + Eu amo esse fluxo de trabalho porque é como ter vários pontos de salvamento em um videogame. Fez uma mudança que você adorou? Faça um commit! Quer tentar algo arriscado? Sem problemas – você sempre pode voltar ao último commit se algo der errado! -> 💡 **Dica**: Você também pode adotar um arquivo `.gitignore` para evitar que arquivos que você não quer rastrear apareçam no GitHub - como aquele arquivo de notas que você guarda na mesma pasta, mas não tem lugar em um repositório público. Você pode encontrar modelos para arquivos `.gitignore` em [.gitignore templates](https://github.com/github/gitignore) ou criar um usando [gitignore.io](https://www.toptal.com/developers/gitignore). + > 💡 **Dica**: Você também pode adotar um arquivo `.gitignore` para evitar que arquivos que você não quer rastrear apareçam no GitHub – como aquele arquivo de anotações que você guarda na mesma pasta, mas que não tem lugar em um repositório público. Você pode encontrar modelos de arquivos `.gitignore` em [.gitignore templates](https://github.com/github/gitignore) ou criar um usando [gitignore.io](https://www.toptal.com/developers/gitignore). -### 🧠 **Primeiro Check-in no Repositório: Como Foi Essa Experiência?** +### 🧠 **Primeiro Check-in no Repositório: Como Foi?** **Tire um momento para celebrar e refletir:** - Como foi ver seu código aparecer no GitHub pela primeira vez? @@ -338,87 +337,86 @@ Eu amo esse fluxo de trabalho porque é como ter vários pontos de salvamento em ```mermaid stateDiagram-v2 - [*] --> LocalFiles: Create project + [*] --> LocalFiles: Criar projeto LocalFiles --> Staged: git add . Staged --> Committed: git commit Committed --> GitHub: git push - GitHub --> [*]: Success! 🎉 + GitHub --> [*]: Sucesso! 🎉 note right of Staged - Files ready to save + Arquivos prontos para salvar end note note right of Committed - Snapshot created + Snapshot criado end note ``` - > **Lembre-se**: Mesmo desenvolvedores experientes às vezes esquecem os comandos exatos. Tornar esse fluxo de trabalho algo automático leva prática – você está indo muito bem! #### Fluxos de trabalho modernos com Git Considere adotar estas práticas modernas: -- **Commits Convencionais**: Use um formato padronizado de mensagens de commit como `feat:`, `fix:`, `docs:`, etc. Saiba mais em [conventionalcommits.org](https://www.conventionalcommits.org/). -- **Commits atômicos**: Faça cada commit representar uma única mudança lógica. -- **Commits frequentes**: Faça commits frequentemente com mensagens descritivas, em vez de grandes commits infrequentes. +- **Commits Convencionais**: Use um formato padronizado para mensagens de commit como `feat:`, `fix:`, `docs:`, etc. Saiba mais em [conventionalcommits.org](https://www.conventionalcommits.org/) +- **Commits atômicos**: Faça com que cada commit represente uma única mudança lógica +- **Commits frequentes**: Faça commits frequentemente com mensagens descritivas em vez de grandes commits esporádicos #### Mensagens de commit -Uma ótima linha de assunto de commit completa a seguinte frase: -Se aplicado, este commit irá . +Uma ótima linha de assunto para um commit no Git completa a seguinte frase: +Se aplicado, este commit irá -Para o assunto, use o imperativo no presente: "alterar" e não "alterado" ou "altera". Assim como no assunto, no corpo (opcional) também use o imperativo no presente. O corpo deve incluir a motivação para a mudança e contrastar isso com o comportamento anterior. Você está explicando o `porquê`, não o `como`. +Para o assunto, use o imperativo no presente: "alterar" e não "alterado" nem "altera". +Assim como no assunto, no corpo (opcional) também use o imperativo no presente. O corpo deve incluir a motivação para a mudança e contrastar isso com o comportamento anterior. Você está explicando o `porquê`, não o `como`. -✅ Reserve alguns minutos para explorar o GitHub. Você consegue encontrar uma mensagem de commit realmente boa? E uma bem simples? Quais informações você acha que são as mais importantes e úteis para transmitir em uma mensagem de commit? +✅ Tire alguns minutos para explorar o GitHub. Você consegue encontrar uma mensagem de commit realmente boa? E uma bem minimalista? Que informações você acha mais importantes e úteis de serem transmitidas em uma mensagem de commit? ## Trabalhando com Outros (A Parte Divertida!) -Segure o chapéu porque AGORA é onde o GitHub se torna absolutamente mágico! 🪄 Você já dominou a gestão do seu próprio código, mas agora vamos mergulhar na minha parte favorita – colaborar com pessoas incríveis de todo o mundo. +Segure o chapéu porque AQUI é onde o GitHub se torna absolutamente mágico! 🪄 Você já dominou a gestão do seu próprio código, mas agora vamos mergulhar na minha parte favorita – colaborar com pessoas incríveis de todo o mundo. -Imagine isso: você acorda amanhã e descobre que alguém em Tóquio melhorou seu código enquanto você dormia. Então, alguém em Berlim corrige um bug que estava te deixando preso. À tarde, um desenvolvedor em São Paulo adiciona uma funcionalidade que você nem tinha pensado. Isso não é ficção científica – é apenas uma terça-feira no universo do GitHub! +Imagine isso: você acorda amanhã e descobre que alguém em Tóquio melhorou seu código enquanto você dormia. Depois, alguém em Berlim corrige um bug que você estava tentando resolver. À tarde, um desenvolvedor em São Paulo adiciona um recurso que você nem tinha pensado. Isso não é ficção científica – é só mais uma terça-feira no universo do GitHub! -O que realmente me empolga é que as habilidades de colaboração que você está prestes a aprender? São os MESMOS fluxos de trabalho que equipes no Google, Microsoft e suas startups favoritas usam todos os dias. Você não está apenas aprendendo uma ferramenta legal – está aprendendo a linguagem secreta que faz o mundo inteiro do software funcionar junto. +O que me deixa realmente empolgado é que as habilidades de colaboração que você está prestes a aprender? São os MESMOS fluxos de trabalho que equipes no Google, Microsoft e suas startups favoritas usam todos os dias. Você não está apenas aprendendo uma ferramenta legal – você está aprendendo a linguagem secreta que faz o mundo inteiro do software funcionar junto. -Sério, uma vez que você experimenta a emoção de ter alguém aceitando seu primeiro pull request, você entende por que os desenvolvedores são tão apaixonados por código aberto. É como fazer parte do maior e mais criativo projeto de equipe do mundo! +Sério, uma vez que você experimenta a emoção de ter alguém aceitando seu primeiro pull request, você entende por que os desenvolvedores são tão apaixonados por código aberto. É como fazer parte do maior e mais criativo projeto em equipe do mundo! > Assista ao vídeo > -> [![Vídeo básico sobre Git e GitHub](https://img.youtube.com/vi/bFCM-PC3cu8/0.jpg)](https://www.youtube.com/watch?v=bFCM-PC3cu8) +> [![Vídeo básico de Git e GitHub](https://img.youtube.com/vi/bFCM-PC3cu8/0.jpg)](https://www.youtube.com/watch?v=bFCM-PC3cu8) -O principal motivo para colocar coisas no GitHub foi tornar possível colaborar com outros desenvolvedores. +O principal motivo para colocar coisas no GitHub era possibilitar a colaboração com outros desenvolvedores. ```mermaid flowchart LR - A[🔍 Find Project] --> B[🍴 Fork Repository] - B --> C[📥 Clone to Local] - C --> D[🌿 Create Branch] - D --> E[✏️ Make Changes] - E --> F[💾 Commit Changes] - F --> G[📤 Push Branch] - G --> H[🔄 Create Pull Request] - H --> I{Maintainer Review} - I -->|✅ Approved| J[🎉 Merge!] - I -->|❓ Changes Requested| K[📝 Make Updates] + A[🔍 Encontrar Projeto] --> B[🍴 Fazer Fork do Repositório] + B --> C[📥 Clonar para Local] + C --> D[🌿 Criar Ramificação] + D --> E[✏️ Fazer Alterações] + E --> F[💾 Commitar Alterações] + F --> G[📤 Enviar Ramificação] + G --> H[🔄 Criar Pull Request] + H --> I{Revisão do Mantenedor} + I -->|✅ Aprovado| J[🎉 Fazer Merge!] + I -->|❓ Alterações Solicitadas| K[📝 Fazer Atualizações] K --> F - J --> L[🧹 Clean Up Branches] + J --> L[🧹 Limpar Ramificações] style A fill:#e3f2fd style J fill:#e8f5e8 style L fill:#fff3e0 ``` +No seu repositório, navegue até `Insights > Community` para ver como seu projeto se compara aos padrões recomendados da comunidade. -No seu repositório, navegue até `Insights > Community` para ver como seu projeto se compara aos padrões recomendados pela comunidade. - -Quer fazer seu repositório parecer profissional e acolhedor? Vá até seu repositório e clique em `Insights > Community`. Esse recurso incrível mostra como seu projeto se compara ao que a comunidade do GitHub considera "boas práticas de repositório". +Quer fazer seu repositório parecer profissional e acolhedor? Vá até o seu repositório e clique em `Insights > Community`. Esse recurso incrível mostra como seu projeto se compara ao que a comunidade do GitHub considera "boas práticas de repositório". -> 🎯 **Fazendo Seu Projeto Brilhar**: Um repositório bem organizado com boa documentação é como ter uma vitrine limpa e acolhedora. Isso mostra que você se importa com seu trabalho e faz com que outros queiram contribuir! +> 🎯 **Fazendo Seu Projeto Brilhar**: Um repositório bem organizado com boa documentação é como ter uma vitrine limpa e acolhedora. Ele mostra que você se importa com seu trabalho e faz com que outros queiram contribuir! **O que torna um repositório incrível:** | O que Adicionar | Por que é Importante | O que Faz por Você | |------------------|----------------------|--------------------| -| **Descrição** | A primeira impressão importa! | As pessoas sabem instantaneamente o que seu projeto faz | +| **Descrição** | A primeira impressão conta! | As pessoas sabem instantaneamente o que seu projeto faz | | **README** | A página inicial do seu projeto | Como um guia amigável para novos visitantes | | **Diretrizes de Contribuição** | Mostra que você aceita ajuda | As pessoas sabem exatamente como podem ajudar você | | **Código de Conduta** | Cria um espaço amigável | Todos se sentem bem-vindos para participar | @@ -430,91 +428,90 @@ Quer fazer seu repositório parecer profissional e acolhedor? Vá até seu repos **Recursos Modernos do GitHub para Explorar:** 🤖 **Automação & CI/CD:** -- **GitHub Actions** para testes e deploys automáticos. -- **Dependabot** para atualizações automáticas de dependências. +- **GitHub Actions** para testes e implantações automatizadas +- **Dependabot** para atualizações automáticas de dependências 💬 **Comunidade & Gerenciamento de Projetos:** -- **GitHub Discussions** para conversas comunitárias além de issues. -- **GitHub Projects** para gerenciamento de projetos no estilo kanban. -- **Regras de proteção de branch** para garantir padrões de qualidade de código. +- **GitHub Discussions** para conversas comunitárias além de issues +- **GitHub Projects** para gerenciamento de projetos no estilo kanban +- **Regras de proteção de branch** para garantir padrões de qualidade de código -Todos esses recursos ajudam na integração de novos membros da equipe. E são geralmente as coisas que novos contribuidores olham antes mesmo de ver seu código, para descobrir se seu projeto é o lugar certo para eles investirem seu tempo. +Todos esses recursos ajudarão na integração de novos membros da equipe. E essas são geralmente as coisas que novos contribuidores olham antes mesmo de olhar para o seu código, para descobrir se o seu projeto é o lugar certo para eles investirem seu tempo. -✅ Arquivos README, embora levem tempo para serem preparados, são frequentemente negligenciados por mantenedores ocupados. Você consegue encontrar um exemplo de um README particularmente descritivo? Nota: existem algumas [ferramentas para ajudar a criar bons READMEs](https://www.makeareadme.com/) que você pode querer experimentar. +✅ Arquivos README, embora levem tempo para serem preparados, são frequentemente negligenciados por mantenedores ocupados. Você consegue encontrar um exemplo de um particularmente descritivo? Nota: existem algumas [ferramentas para ajudar a criar bons READMEs](https://www.makeareadme.com/) que você pode querer experimentar. ### Tarefa: Mesclar algum código -Documentos de contribuição ajudam as pessoas a contribuir para o projeto. Eles explicam quais tipos de contribuições você está procurando e como o processo funciona. Os contribuidores precisarão passar por uma série de etapas para poder contribuir para seu repositório no GitHub: +Documentos de contribuição ajudam as pessoas a contribuir com o projeto. Eles explicam quais tipos de contribuições você está procurando e como o processo funciona. Os contribuidores precisarão passar por uma série de etapas para poder contribuir com seu repositório no GitHub: -1. **Fazer um fork do seu repositório**. Você provavelmente vai querer que as pessoas _façam um fork_ do seu projeto. Fazer um fork significa criar uma réplica do seu repositório no perfil delas no GitHub. -1. **Clonar**. A partir daí, elas irão clonar o projeto para suas máquinas locais. -1. **Criar uma branch**. Você vai querer pedir que elas criem uma _branch_ para o trabalho delas. -1. **Focar a mudança em uma área**. Peça aos contribuidores para concentrarem suas contribuições em uma coisa de cada vez – assim, as chances de você conseguir _mesclar_ o trabalho deles são maiores. Imagine que eles escrevem uma correção de bug, adicionam uma nova funcionalidade e atualizam vários testes – e se você quiser, ou puder, implementar apenas 2 de 3 ou 1 de 3 mudanças? +1. **Fazer um fork do seu repositório**. Você provavelmente vai querer que as pessoas _façam um fork_ do seu projeto. Fazer um fork significa criar uma réplica do seu repositório no perfil do GitHub delas. +1. **Clonar**. A partir daí, elas irão clonar o projeto para a máquina local. +1. **Criar um branch**. Você vai querer pedir que elas criem um _branch_ para o trabalho delas. +1. **Focar a mudança em uma área**. Peça aos contribuidores que concentrem suas contribuições em uma coisa de cada vez – assim, as chances de você _mesclar_ o trabalho deles são maiores. Imagine que eles escrevam uma correção de bug, adicionem um novo recurso e atualizem vários testes – e se você quiser, ou puder, implementar apenas 2 de 3, ou 1 de 3 mudanças? -✅ Imagine uma situação onde branches são particularmente críticas para escrever e enviar um bom código. Quais casos de uso você consegue pensar? +✅ Imagine uma situação onde branches são particularmente críticos para escrever e entregar um bom código. Quais casos de uso você consegue pensar? -> Nota: seja a mudança que você quer ver no mundo e crie branches para seu próprio trabalho também. Qualquer commit que você fizer será feito na branch em que você está atualmente "checado". Use `git status` para ver qual branch é essa. +> Nota, seja a mudança que você quer ver no mundo, e crie branches para o seu próprio trabalho também. Quaisquer commits que você fizer serão feitos no branch em que você está atualmente "checado". Use `git status` para ver em qual branch você está. -Vamos passar por um fluxo de trabalho de contribuidor. Suponha que o contribuidor já tenha feito _fork_ e _clonado_ o repositório, então ele tem um repositório Git pronto para ser trabalhado em sua máquina local: +Vamos passar por um fluxo de trabalho de contribuidor. Suponha que o contribuidor já tenha _feito um fork_ e _clonado_ o repositório, então ele tem um repositório Git pronto para ser trabalhado, na máquina local: -1. **Criar uma branch**. Use o comando `git branch` para criar uma branch que conterá as mudanças que ele pretende contribuir: +1. **Criar um branch**. Use o comando `git branch` para criar um branch que conterá as mudanças que ele pretende contribuir: ```bash git branch [branch-name] ``` -> 💡 **Abordagem Moderna**: Você também pode criar e alternar para a nova branch em um único comando: + > 💡 **Abordagem Moderna**: Você também pode criar e alternar para o novo branch em um único comando: ```bash git switch -c [branch-name] ``` -1. **Alternar para a branch de trabalho**. Alterne para a branch especificada e atualize o diretório de trabalho com `git switch`: +1. **Alternar para o branch de trabalho**. Altere para o branch especificado e atualize o diretório de trabalho com `git switch`: ```bash git switch [branch-name] ``` -> 💡 **Nota Moderna**: `git switch` é a substituição moderna para `git checkout` ao mudar de branch. É mais claro e seguro para iniciantes. + > 💡 **Nota Moderna**: `git switch` é a substituição moderna para `git checkout` ao mudar de branch. É mais claro e seguro para iniciantes. -1. **Fazer o trabalho**. Neste ponto, você quer adicionar suas mudanças. Não se esqueça de informar ao Git sobre isso com os seguintes comandos: +1. **Fazer o trabalho**. Neste ponto, você quer adicionar suas mudanças. Não se esqueça de informar ao Git com os seguintes comandos: ```bash git add . git commit -m "my changes" ``` -> ⚠️ **Qualidade da Mensagem de Commit**: Certifique-se de dar um bom nome ao seu commit, tanto para você quanto para o mantenedor do repositório que você está ajudando. Seja específico sobre o que você alterou! + > ⚠️ **Qualidade da Mensagem de Commit**: Certifique-se de dar um bom nome ao seu commit, tanto para você quanto para o mantenedor do repositório que você está ajudando. Seja específico sobre o que você mudou! -1. **Combinar seu trabalho com a branch `main`**. Em algum momento, você termina o trabalho e quer combinar seu trabalho com o da branch `main`. A branch `main` pode ter mudado enquanto isso, então certifique-se de primeiro atualizá-la para a versão mais recente com os seguintes comandos: +1. **Combinar seu trabalho com o branch `main`**. Em algum momento, você termina o trabalho e quer combinar seu trabalho com o do branch `main`. O branch `main` pode ter mudado nesse meio tempo, então certifique-se de atualizá-lo para a versão mais recente com os seguintes comandos: ```bash git switch main git pull ``` -Neste ponto, você quer garantir que quaisquer _conflitos_, situações onde o Git não consegue facilmente _combinar_ as mudanças, aconteçam na sua branch de trabalho. Portanto, execute os seguintes comandos: + Neste ponto, você quer garantir que quaisquer _conflitos_, situações onde o Git não consegue facilmente _combinar_ as mudanças, ocorram no seu branch de trabalho. Portanto, execute os seguintes comandos: ```bash git switch [branch_name] git merge main ``` -O comando `git merge main` trará todas as mudanças da `main` para sua branch. Esperamos que você possa simplesmente continuar. Se não, o VS Code mostrará onde o Git está _confuso_ e você apenas altera os arquivos afetados para indicar qual conteúdo é o mais preciso. + O comando `git merge main` trará todas as mudanças do `main` para o seu branch. Com sorte, você pode simplesmente continuar. Se não, o VS Code mostrará onde o Git está _confuso_ e você apenas altera os arquivos afetados para dizer qual conteúdo é o mais preciso. -💡 **Alternativa Moderna**: Considere usar `git rebase` para um histórico mais limpo: + 💡 **Alternativa moderna**: Considere usar `git rebase` para um histórico mais limpo: ```bash git rebase main ``` + Isso reproduz seus commits no topo do branch `main` mais recente, criando um histórico linear. -Isso reproduz seus commits no topo da última branch main, criando um histórico linear. - -1. **Envie seu trabalho para o GitHub**. Enviar seu trabalho para o GitHub significa duas coisas. Enviar sua branch para seu repositório e então abrir um PR, Pull Request. +1. **Envie seu trabalho para o GitHub**. Enviar seu trabalho para o GitHub significa duas coisas. Fazer o push do seu branch para o seu repositório e depois abrir um PR, Pull Request. ```bash git push --set-upstream origin [branch-name] ``` -O comando acima cria a branch no seu repositório forkado. + O comando acima cria o branch no seu repositório forkado. ### 🤝 **Teste de Habilidades de Colaboração: Pronto para Trabalhar com Outros?** @@ -525,47 +522,46 @@ O comando acima cria a branch no seu repositório forkado. ```mermaid mindmap - root((Git Collaboration)) + root((Colaboração com Git)) Branching - Feature branches - Bug fix branches - Experimental work + Ramificações de funcionalidades + Ramificações de correção de bugs + Trabalho experimental Pull Requests - Code review - Discussion - Testing - Best Practices - Clear commit messages - Small focused changes - Good documentation + Revisão de código + Discussão + Testes + Melhores Práticas + Mensagens de commit claras + Mudanças pequenas e focadas + Boa documentação ``` +> **Impulsionador de confiança**: Todo desenvolvedor que você admira já ficou nervoso com seu primeiro pull request. A comunidade do GitHub é incrivelmente acolhedora para iniciantes! -> **Impulso de confiança**: Todo desenvolvedor que você admira já ficou nervoso com seu primeiro pull request. A comunidade do GitHub é incrivelmente acolhedora para iniciantes! +1. **Abra um PR**. Em seguida, você quer abrir um PR. Você faz isso navegando até o repositório forkado no GitHub. Você verá uma indicação no GitHub perguntando se deseja criar um novo PR, clique nisso e você será levado a uma interface onde pode alterar o título da mensagem de commit, dar uma descrição mais adequada. Agora o mantenedor do repositório que você forkou verá este PR e _dedos cruzados_ ele apreciará e _mesclará_ seu PR. Agora você é um contribuidor, yay :) -1. **Abra um PR**. Em seguida, você quer abrir um PR. Você faz isso navegando até o repositório forkado no GitHub. Você verá uma indicação no GitHub perguntando se deseja criar um novo PR, clique nisso e será levado a uma interface onde pode alterar o título da mensagem de commit, dar uma descrição mais adequada. Agora o mantenedor do repositório que você forkou verá este PR e _dedos cruzados_ ele apreciará e _mesclará_ seu PR. Agora você é um contribuidor, yay :) - -💡 **Dica Moderna**: Você também pode criar PRs usando o GitHub CLI: + 💡 **Dica Moderna**: Você também pode criar PRs usando o GitHub CLI: ```bash gh pr create --title "Your PR title" --body "Description of changes" ``` -🔧 **Melhores práticas para PRs**: -- Vincule a issues relacionadas usando palavras-chave como "Fixes #123". -- Adicione capturas de tela para mudanças na interface. -- Solicite revisores específicos. -- Use PRs de rascunho para trabalhos em andamento. -- Certifique-se de que todos os testes de CI sejam aprovados antes de solicitar revisão. + 🔧 **Melhores práticas para PRs**: + - Vincule a issues relacionadas usando palavras-chave como "Fixes #123" + - Adicione capturas de tela para mudanças na interface + - Solicite revisores específicos + - Use PRs de rascunho para trabalhos em andamento + - Certifique-se de que todos os testes de CI passem antes de solicitar revisão 1. **Limpeza**. É considerado uma boa prática _limpar_ após você ter mesclado com sucesso um PR. Você deve limpar tanto sua branch local quanto a branch que você enviou para o GitHub. Primeiro, vamos deletá-la localmente com o seguinte comando: ```bash git branch -d [branch-name] ``` - Certifique-se de ir à página do repositório bifurcado no GitHub e remover a branch remota que você acabou de enviar. + Certifique-se de ir à página do GitHub para o repositório bifurcado e remover a branch remota que você acabou de enviar. -`Pull request` parece um termo estranho porque, na verdade, você quer enviar suas alterações para o projeto. Mas o mantenedor (dono do projeto) ou a equipe principal precisa considerar suas alterações antes de mesclá-las com a branch "main" do projeto, então você está realmente solicitando uma decisão de mudança ao mantenedor. +`Pull request` parece um termo estranho porque, na verdade, você quer enviar suas alterações para o projeto. Mas o mantenedor (dono do projeto) ou a equipe principal precisa considerar suas alterações antes de mesclá-las com a branch "main" do projeto, então você está realmente solicitando uma decisão de mudança de um mantenedor. -Um pull request é o lugar para comparar e discutir as diferenças introduzidas em uma branch com revisões, comentários, testes integrados e mais. Um bom pull request segue basicamente as mesmas regras de uma mensagem de commit. Você pode adicionar uma referência a um problema no rastreador de problemas, por exemplo, quando seu trabalho resolve um problema. Isso é feito usando um `#` seguido pelo número do problema. Por exemplo, `#97`. +Um pull request é o lugar para comparar e discutir as diferenças introduzidas em uma branch com revisões, comentários, testes integrados e mais. Um bom pull request segue aproximadamente as mesmas regras de uma mensagem de commit. Você pode adicionar uma referência a um problema no rastreador de problemas, quando seu trabalho, por exemplo, resolve um problema. Isso é feito usando um `#` seguido pelo número do problema. Por exemplo, `#97`. 🤞Dedos cruzados para que todos os testes passem e o(s) dono(s) do projeto mesclem suas alterações no projeto🤞 @@ -575,34 +571,33 @@ Atualize sua branch local atual com todos os novos commits da branch remota corr ## Contribuindo para Open Source (Sua Chance de Fazer a Diferença!) -Está pronto para algo que vai explodir sua mente? 🤯 Vamos falar sobre contribuir para projetos de código aberto – e estou arrepiado só de pensar em compartilhar isso com você! +Está pronto para algo que vai absolutamente explodir sua mente? 🤯 Vamos falar sobre contribuir para projetos de código aberto – e estou arrepiado só de pensar em compartilhar isso com você! -Essa é sua chance de fazer parte de algo verdadeiramente extraordinário. Imagine melhorar ferramentas que milhões de desenvolvedores usam todos os dias ou corrigir um bug em um aplicativo que seus amigos adoram. Isso não é apenas um sonho – é exatamente o que significa contribuir para o código aberto! +Essa é sua chance de fazer parte de algo verdadeiramente extraordinário. Imagine melhorar as ferramentas que milhões de desenvolvedores usam todos os dias ou corrigir um bug em um aplicativo que seus amigos adoram. Isso não é apenas um sonho – é exatamente o que a contribuição para código aberto significa! -Aqui está o que me dá arrepios toda vez que penso nisso: cada ferramenta que você tem aprendido – seu editor de código, os frameworks que exploraremos, até o navegador que você está usando agora – começou com alguém exatamente como você fazendo sua primeira contribuição. Aquele desenvolvedor brilhante que criou sua extensão favorita do VS Code? Ele também foi um iniciante clicando em "create pull request" com as mãos trêmulas, assim como você está prestes a fazer. +Aqui está o que me dá arrepios toda vez que penso nisso: cada ferramenta que você tem aprendido – seu editor de código, os frameworks que exploraremos, até mesmo o navegador que você está usando – começou com alguém exatamente como você fazendo sua primeira contribuição. Aquele desenvolvedor brilhante que criou sua extensão favorita do VS Code? Ele também foi um iniciante clicando em "create pull request" com as mãos trêmulas, assim como você está prestes a fazer. -E aqui está a parte mais bonita: a comunidade de código aberto é como o maior abraço coletivo da internet. A maioria dos projetos procura ativamente por iniciantes e tem problemas marcados como "good first issue" especificamente para pessoas como você! Os mantenedores genuinamente ficam animados ao ver novos contribuidores porque se lembram de seus próprios primeiros passos. +E aqui está a parte mais bonita: a comunidade de código aberto é como o maior abraço coletivo da internet. A maioria dos projetos procura ativamente por novos colaboradores e tem problemas marcados como "good first issue" especificamente para pessoas como você! Os mantenedores genuinamente ficam animados quando veem novos colaboradores porque se lembram de seus próprios primeiros passos. ```mermaid flowchart TD - A[🔍 Explore GitHub] --> B[🏷️ Find "good first issue"] - B --> C[📖 Read Contributing Guidelines] - C --> D[🍴 Fork Repository] - D --> E[💻 Set Up Local Environment] - E --> F[🌿 Create Feature Branch] - F --> G[✨ Make Your Contribution] - G --> H[🧪 Test Your Changes] - H --> I[📝 Write Clear Commit] - I --> J[📤 Push & Create PR] - J --> K[💬 Engage with Feedback] - K --> L[🎉 Merged! You're a Contributor!] - L --> M[🌟 Find Next Issue] + A[🔍 Explorar GitHub] --> B[🏷️ Encontrar "boa primeira issue"] + B --> C[📖 Ler Diretrizes de Contribuição] + C --> D[🍴 Fazer Fork do Repositório] + D --> E[💻 Configurar Ambiente Local] + E --> F[🌿 Criar Branch de Funcionalidade] + F --> G[✨ Fazer Sua Contribuição] + G --> H[🧪 Testar Suas Alterações] + H --> I[📝 Escrever Commit Claro] + I --> J[📤 Fazer Push & Criar PR] + J --> K[💬 Interagir com Feedback] + K --> L[🎉 Mergeado! Você é um Contribuidor!] + L --> M[🌟 Encontrar Próxima Issue] style A fill:#e1f5fe style L fill:#c8e6c9 style M fill:#fff59d ``` - Você não está apenas aprendendo a programar aqui – está se preparando para se juntar a uma família global de criadores que acordam todos os dias pensando "Como podemos tornar o mundo digital um pouco melhor?" Bem-vindo ao clube! 🌟 Primeiro, vamos encontrar um repositório (ou **repo**) no GitHub que seja do seu interesse e ao qual você gostaria de contribuir com uma alteração. Você vai querer copiar seu conteúdo para sua máquina. @@ -615,13 +610,13 @@ Existem várias maneiras de copiar código. Uma delas é "clonar" o conteúdo do Abra seu terminal e clone o repositório assim: ```bash -# Using HTTPS +# Usando HTTPS git clone https://github.com/ProjectURL -# Using SSH (requires SSH key setup) +# Usando SSH (requer configuração de chave SSH) git clone git@github.com:username/repository.git -# Using GitHub CLI +# Usando GitHub CLI gh repo clone username/repository ``` @@ -649,7 +644,7 @@ Os projetos também podem ter discussões em fóruns, listas de e-mails ou canai - **GitHub Sponsors** - Apoie financeiramente os mantenedores - **Aba de segurança** - Relatórios de vulnerabilidade e avisos de segurança - **Aba de ações** - Veja fluxos de trabalho automatizados e pipelines CI/CD -- **Aba de insights** - Análises sobre contribuidores, commits e saúde do projeto +- **Aba de insights** - Análises sobre colaboradores, commits e saúde do projeto - **Aba de projetos** - Ferramentas de gerenciamento de projetos integradas do GitHub ✅ Dê uma olhada no seu novo repositório do GitHub e experimente algumas coisas, como editar configurações, adicionar informações ao seu repositório, criar um projeto (como um quadro Kanban) e configurar GitHub Actions para automação. Há muito o que explorar! @@ -660,7 +655,7 @@ Os projetos também podem ter discussões em fóruns, listas de e-mails ou canai Certo, é hora de colocar seus novos superpoderes do GitHub à prova! 🚀 Aqui está um desafio que vai fazer tudo se encaixar de forma super satisfatória: -Chame um amigo (ou aquele membro da família que sempre pergunta o que você está fazendo com todo esse "negócio de computador") e embarque juntos em uma aventura de codificação colaborativa! É aqui que a mágica acontece – crie um projeto, deixe eles forcarem, criem algumas branches e mesclem alterações como os profissionais que vocês estão se tornando. +Chame um amigo (ou aquele membro da família que sempre pergunta o que você está fazendo com "essas coisas de computador") e embarque juntos em uma aventura de codificação colaborativa! É aqui que a mágica acontece – crie um projeto, deixe eles forcarem, criem algumas branches e mesclem alterações como os profissionais que vocês estão se tornando. Não vou mentir – vocês provavelmente vão rir em algum momento (especialmente quando ambos tentarem alterar a mesma linha), talvez coçar a cabeça em confusão, mas definitivamente terão aqueles momentos incríveis de "aha!" que fazem todo o aprendizado valer a pena. Além disso, há algo especial em compartilhar aquela primeira mesclagem bem-sucedida com outra pessoa – é como uma pequena celebração de quão longe vocês chegaram! @@ -671,14 +666,14 @@ Ainda não tem um parceiro de codificação? Sem problemas! A comunidade do GitH ## Revisão & Continue Aprendendo -Ufa! 🎉 Olha só – você acabou de dominar os fundamentos do GitHub como um verdadeiro campeão! Se sua cabeça está um pouco cheia agora, isso é completamente normal e, honestamente, um bom sinal. Você acabou de aprender ferramentas que levaram semanas para eu me sentir confortável quando comecei. +Ufa! 🎉 Olha só você – acabou de dominar os fundamentos do GitHub como um verdadeiro campeão! Se sua cabeça está um pouco cheia agora, isso é completamente normal e, honestamente, um bom sinal. Você acabou de aprender ferramentas que levaram semanas para eu me sentir confortável quando comecei. Git e GitHub são incrivelmente poderosos (tipo, muito poderosos), e todo desenvolvedor que conheço – incluindo aqueles que parecem magos agora – teve que praticar e tropeçar um pouco antes de tudo fazer sentido. O fato de você ter concluído esta lição significa que já está no caminho para dominar algumas das ferramentas mais importantes no kit de ferramentas de um desenvolvedor. Aqui estão alguns recursos absolutamente fantásticos para ajudá-lo a praticar e se tornar ainda mais incrível: -- [Guia para contribuir com software de código aberto](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) – Seu roteiro para fazer a diferença -- [Cheatsheet do Git](https://training.github.com/downloads/github-git-cheat-sheet/) – Tenha isso à mão para referência rápida! +- [Guia de contribuição para software de código aberto](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) – Seu roteiro para fazer a diferença +- [Cheatsheet de Git](https://training.github.com/downloads/github-git-cheat-sheet/) – Tenha isso à mão para referência rápida! E lembre-se: prática leva ao progresso, não à perfeição! Quanto mais você usar Git e GitHub, mais natural isso se tornará. O GitHub criou alguns cursos interativos incríveis que permitem que você pratique em um ambiente seguro: @@ -691,22 +686,22 @@ E lembre-se: prática leva ao progresso, não à perfeição! Quanto mais você - [Documentação do GitHub CLI](https://cli.github.com/manual/) – Para quando você quiser se sentir como um mago da linha de comando - [Documentação do GitHub Codespaces](https://docs.github.com/en/codespaces) – Codifique na nuvem! - [Documentação do GitHub Actions](https://docs.github.com/en/actions) – Automatize tudo -- [Melhores práticas do Git](https://www.atlassian.com/git/tutorials/comparing-workflows) – Eleve seu jogo de fluxo de trabalho +- [Melhores práticas de Git](https://www.atlassian.com/git/tutorials/comparing-workflows) – Eleve seu jogo de fluxo de trabalho ## Desafio do Agente GitHub Copilot 🚀 Use o modo Agente para completar o seguinte desafio: -**Descrição:** Crie um projeto colaborativo de desenvolvimento web que demonstre o fluxo de trabalho completo do GitHub que você aprendeu nesta lição. Este desafio ajudará você a praticar a criação de repositórios, recursos de colaboração e fluxos de trabalho modernos do Git em um cenário real. +**Descrição:** Crie um projeto colaborativo de desenvolvimento web que demonstre o fluxo de trabalho completo do GitHub que você aprendeu nesta lição. Este desafio ajudará você a praticar criação de repositórios, recursos de colaboração e fluxos de trabalho modernos do Git em um cenário real. -**Prompt:** Crie um novo repositório público no GitHub para um projeto simples de "Recursos de Desenvolvimento Web". O repositório deve incluir um arquivo README.md bem estruturado listando ferramentas e recursos úteis para desenvolvimento web, organizados por categorias (HTML, CSS, JavaScript, etc.). Configure o repositório com padrões de comunidade adequados, incluindo uma licença, diretrizes de contribuição e um código de conduta. Crie pelo menos duas branches de recursos: uma para adicionar recursos de CSS e outra para recursos de JavaScript. Faça commits em cada branch com mensagens de commit descritivas, depois crie pull requests para mesclar as alterações de volta para a main. Ative recursos do GitHub como Issues, Discussions e configure um fluxo de trabalho básico do GitHub Actions para verificações automatizadas. +**Prompt:** Crie um novo repositório público no GitHub para um projeto simples de "Recursos de Desenvolvimento Web". O repositório deve incluir um arquivo README.md bem estruturado listando ferramentas e recursos úteis de desenvolvimento web, organizados por categorias (HTML, CSS, JavaScript, etc.). Configure o repositório com padrões adequados da comunidade, incluindo uma licença, diretrizes de contribuição e um código de conduta. Crie pelo menos duas branches de recursos: uma para adicionar recursos de CSS e outra para recursos de JavaScript. Faça commits em cada branch com mensagens de commit descritivas, depois crie pull requests para mesclar as alterações de volta para a main. Ative recursos do GitHub como Issues, Discussions e configure um fluxo de trabalho básico do GitHub Actions para verificações automatizadas. ## Tarefa Sua missão, caso decida aceitá-la: Complete o curso [Introdução ao GitHub](https://github.com/skills/introduction-to-github) no GitHub Skills. Este curso interativo permitirá que você pratique tudo o que aprendeu em um ambiente seguro e guiado. Além disso, você ganhará um badge legal ao terminar! 🏅 **Sentindo-se pronto para mais desafios?** -- Configure a autenticação SSH para sua conta do GitHub (nada de senhas!) +- Configure autenticação SSH para sua conta do GitHub (nada de senhas!) - Experimente usar o GitHub CLI para suas operações diárias com Git - Crie um repositório com um fluxo de trabalho do GitHub Actions - Explore o GitHub Codespaces abrindo este mesmo repositório em um editor baseado na nuvem @@ -715,25 +710,25 @@ Sua missão, caso decida aceitá-la: Complete o curso [Introdução ao GitHub](h ## 🚀 Sua Linha do Tempo de Domínio do GitHub -### ⚡ **O que você pode fazer nos próximos 5 minutos** +### ⚡ **O Que Você Pode Fazer nos Próximos 5 Minutos** - [ ] Dê estrela neste repositório e em outros 3 projetos que te interessam -- [ ] Configure a autenticação de dois fatores na sua conta do GitHub +- [ ] Configure autenticação de dois fatores na sua conta do GitHub - [ ] Crie um README simples para seu primeiro repositório - [ ] Siga 5 desenvolvedores cujo trabalho te inspira -### 🎯 **O que você pode realizar nesta hora** +### 🎯 **O Que Você Pode Realizar Nesta Hora** - [ ] Complete o quiz pós-aula e reflita sobre sua jornada no GitHub - [ ] Configure chaves SSH para autenticação sem senha no GitHub - [ ] Faça seu primeiro commit significativo com uma ótima mensagem de commit - [ ] Explore a aba "Explore" do GitHub para descobrir projetos em alta - [ ] Pratique forkar um repositório e fazer uma pequena alteração -### 📅 **Sua Aventura de GitHub de Uma Semana** +### 📅 **Sua Aventura de Uma Semana no GitHub** - [ ] Complete os cursos do GitHub Skills (Introdução ao GitHub, Markdown) - [ ] Faça seu primeiro pull request para um projeto de código aberto - [ ] Configure um site GitHub Pages para mostrar seu trabalho - [ ] Participe de Discussões no GitHub sobre projetos que te interessam -- [ ] Crie um repositório com padrões de comunidade adequados (README, Licença, etc.) +- [ ] Crie um repositório com padrões adequados da comunidade (README, Licença, etc.) - [ ] Experimente o GitHub Codespaces para desenvolvimento baseado na nuvem ### 🌟 **Sua Transformação de Um Mês** @@ -742,38 +737,39 @@ Sua missão, caso decida aceitá-la: Complete o curso [Introdução ao GitHub](h - [ ] Configure fluxos de trabalho automatizados com GitHub Actions - [ ] Construa um portfólio mostrando suas contribuições no GitHub - [ ] Participe do Hacktoberfest ou eventos comunitários similares -- [ ] Torne-se mantenedor de seu próprio projeto que outros contribuem +- [ ] Torne-se mantenedor de seu próprio projeto para o qual outros contribuam ### 🎓 **Check-in Final de Domínio do GitHub** **Celebre o quão longe você chegou:** - Qual é sua coisa favorita sobre usar o GitHub? -- Qual recurso de colaboração mais te empolga? -- Quão confiante você se sente sobre contribuir para código aberto agora? +- Qual recurso de colaboração te deixa mais animado? +- Quão confiante você se sente em contribuir para código aberto agora? - Qual é o primeiro projeto para o qual você quer contribuir? ```mermaid journey - title Your GitHub Confidence Journey - section Today - Nervous: 3: You - Curious: 4: You - Excited: 5: You - section This Week - Practicing: 4: You - Contributing: 5: You - Connecting: 5: You - section Next Month - Collaborating: 5: You - Leading: 5: You - Inspiring Others: 5: You + title Sua Jornada de Confiança no GitHub + section Hoje + Nervoso: 3: Você + Curioso: 4: Você + Animado: 5: Você + section Esta Semana + Praticando: 4: Você + Contribuindo: 5: Você + Conectando: 5: Você + section Próximo Mês + Colaborando: 5: Você + Liderando: 5: Você + Inspirando Outros: 5: Você ``` - -> 🌍 **Bem-vindo à comunidade global de desenvolvedores!** Agora você tem as ferramentas para colaborar com milhões de desenvolvedores ao redor do mundo. Sua primeira contribuição pode parecer pequena, mas lembre-se - todo grande projeto de código aberto começou com alguém fazendo seu primeiro commit. A questão não é se você fará impacto, mas qual projeto incrível se beneficiará da sua perspectiva única primeiro! 🚀 +> 🌍 **Bem-vindo à comunidade global de desenvolvedores!** Agora você tem as ferramentas para colaborar com milhões de desenvolvedores ao redor do mundo. Sua primeira contribuição pode parecer pequena, mas lembre-se - todo grande projeto de código aberto começou com alguém fazendo seu primeiro commit. A questão não é se você fará um impacto, mas qual projeto incrível se beneficiará da sua perspectiva única primeiro! 🚀 Lembre-se: todo especialista já foi iniciante. Você consegue! 💪 --- + **Aviso Legal**: -Este documento foi traduzido utilizando o serviço de tradução por IA [Co-op Translator](https://github.com/Azure/co-op-translator). Embora nos esforcemos para garantir a precisão, esteja ciente de que traduções automáticas podem conter erros ou imprecisões. O documento original em seu idioma nativo deve ser considerado a fonte autoritativa. Para informações críticas, recomenda-se a tradução profissional humana. Não nos responsabilizamos por quaisquer mal-entendidos ou interpretações incorretas decorrentes do uso desta tradução. \ No newline at end of file +Este documento foi traduzido utilizando o serviço de tradução por IA [Co-op Translator](https://github.com/Azure/co-op-translator). Embora nos esforcemos para garantir a precisão, esteja ciente de que traduções automáticas podem conter erros ou imprecisões. O documento original em seu idioma nativo deve ser considerado a fonte oficial. Para informações críticas, recomenda-se a tradução profissional humana. Não nos responsabilizamos por quaisquer mal-entendidos ou interpretações incorretas decorrentes do uso desta tradução. + \ No newline at end of file diff --git a/translations/br/README.md b/translations/br/README.md index c31810a8..ca110503 100644 --- a/translations/br/README.md +++ b/translations/br/README.md @@ -1,8 +1,8 @@ -[Árabe](../ar/README.md) | [Bengali](../bn/README.md) | [Búlgaro](../bg/README.md) | [Birmanês (Myanmar)](../my/README.md) | [Chinês (Simplificado)](../zh/README.md) | [Chinês (Tradicional, Hong Kong)](../hk/README.md) | [Chinês (Tradicional, Macau)](../mo/README.md) | [Chinês (Tradicional, Taiwan)](../tw/README.md) | [Croata](../hr/README.md) | [Tcheco](../cs/README.md) | [Dinamarquês](../da/README.md) | [Holandês](../nl/README.md) | [Estoniano](../et/README.md) | [Finlandês](../fi/README.md) | [Francês](../fr/README.md) | [Alemão](../de/README.md) | [Grego](../el/README.md) | [Hebraico](../he/README.md) | [Hindi](../hi/README.md) | [Húngaro](../hu/README.md) | [Indonésio](../id/README.md) | [Italiano](../it/README.md) | [Japonês](../ja/README.md) | [Coreano](../ko/README.md) | [Lituano](../lt/README.md) | [Malaio](../ms/README.md) | [Marathi](../mr/README.md) | [Nepalês](../ne/README.md) | [Norueguês](../no/README.md) | [Persa (Farsi)](../fa/README.md) | [Polonês](../pl/README.md) | [Português (Brasil)](./README.md) | [Português (Portugal)](../pt/README.md) | [Punjabi (Gurmukhi)](../pa/README.md) | [Romeno](../ro/README.md) | [Russo](../ru/README.md) | [Sérvio (Cirílico)](../sr/README.md) | [Eslovaco](../sk/README.md) | [Esloveno](../sl/README.md) | [Espanhol](../es/README.md) | [Swahili](../sw/README.md) | [Sueco](../sv/README.md) | [Tagalog (Filipino)](../tl/README.md) | [Tâmil](../ta/README.md) | [Tailandês](../th/README.md) | [Turco](../tr/README.md) | [Ucraniano](../uk/README.md) | [Urdu](../ur/README.md) | [Vietnamita](../vi/README.md) - + +[Árabe](../ar/README.md) | [Bengali](../bn/README.md) | [Búlgaro](../bg/README.md) | [Birmanês (Myanmar)](../my/README.md) | [Chinês (Simplificado)](../zh/README.md) | [Chinês (Tradicional, Hong Kong)](../hk/README.md) | [Chinês (Tradicional, Macau)](../mo/README.md) | [Chinês (Tradicional, Taiwan)](../tw/README.md) | [Croata](../hr/README.md) | [Tcheco](../cs/README.md) | [Dinamarquês](../da/README.md) | [Holandês](../nl/README.md) | [Estoniano](../et/README.md) | [Finlandês](../fi/README.md) | [Francês](../fr/README.md) | [Alemão](../de/README.md) | [Grego](../el/README.md) | [Hebraico](../he/README.md) | [Hindi](../hi/README.md) | [Húngaro](../hu/README.md) | [Indonésio](../id/README.md) | [Italiano](../it/README.md) | [Japonês](../ja/README.md) | [Coreano](../ko/README.md) | [Lituano](../lt/README.md) | [Malaio](../ms/README.md) | [Marathi](../mr/README.md) | [Nepalês](../ne/README.md) | [Norueguês](../no/README.md) | [Persa (Farsi)](../fa/README.md) | [Polonês](../pl/README.md) | [Português (Brasil)](./README.md) | [Português (Portugal)](../pt/README.md) | [Punjabi (Gurmukhi)](../pa/README.md) | [Romeno](../ro/README.md) | [Russo](../ru/README.md) | [Sérvio (Cirílico)](../sr/README.md) | [Eslovaco](../sk/README.md) | [Esloveno](../sl/README.md) | [Espanhol](../es/README.md) | [Suaíli](../sw/README.md) | [Sueco](../sv/README.md) | [Tagalog (Filipino)](../tl/README.md) | [Tâmil](../ta/README.md) | [Tailandês](../th/README.md) | [Turco](../tr/README.md) | [Ucraniano](../uk/README.md) | [Urdu](../ur/README.md) | [Vietnamita](../vi/README.md) + **Se você deseja ter suporte para idiomas adicionais, eles estão listados [aqui](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)** @@ -46,15 +46,15 @@ Siga estas etapas para começar a usar esses recursos: #### 🧑‍🎓 _Você é estudante?_ -Visite [**Página do Hub de Estudantes**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) onde você encontrará recursos para iniciantes, pacotes para estudantes e até mesmo maneiras de obter um voucher para certificado gratuito. Esta é a página que você deve salvar nos favoritos e verificar de tempos em tempos, pois o conteúdo é atualizado mensalmente. +Visite [**Página do Hub Estudantil**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) onde você encontrará recursos para iniciantes, pacotes para estudantes e até mesmo maneiras de obter um voucher de certificado gratuito. Esta é a página que você deve marcar como favorita e verificar de tempos em tempos, pois trocamos o conteúdo mensalmente. -### 📣 Anúncio - Novos desafios com o modo Agent do GitHub Copilot para completar! +### 📣 Anúncio - Novos desafios do modo Agente do GitHub Copilot para completar! -Novo desafio adicionado, procure por "Desafio do GitHub Copilot Agent 🚀" na maioria dos capítulos. Este é um novo desafio para você completar usando o GitHub Copilot e o modo Agent. Se você ainda não usou o modo Agent antes, ele é capaz de não apenas gerar texto, mas também criar e editar arquivos, executar comandos e muito mais. +Novo desafio adicionado, procure por "Desafio do Agente do GitHub Copilot 🚀" na maioria dos capítulos. Esse é um novo desafio para você completar usando o GitHub Copilot e o modo Agente. Se você ainda não usou o modo Agente antes, ele é capaz de não apenas gerar texto, mas também criar e editar arquivos, executar comandos e muito mais. -### 📣 Anúncio - _Novo Projeto para criar usando IA Generativa_ +### 📣 Anúncio - _Novo Projeto para construir usando IA Generativa_ -Novo projeto de Assistente de IA adicionado, confira [projeto](./09-chat-project/README.md) +Novo projeto de Assistente de IA acabou de ser adicionado, confira [projeto](./09-chat-project/README.md) ### 📣 Anúncio - _Novo Currículo_ sobre IA Generativa para JavaScript foi lançado @@ -64,9 +64,9 @@ Visite [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) para com ![Background](../../translated_images/background.148a8d43afde57303419a663f50daf586681bc2fabf833f66ef6954073983c66.br.png) -- Lições que cobrem tudo, desde o básico até RAG. +- Lições cobrindo tudo, desde o básico até RAG. - Interaja com personagens históricos usando GenAI e nosso aplicativo complementar. -- Narrativa divertida e envolvente, você viajará no tempo! +- Narrativa divertida e envolvente, você estará viajando no tempo! ![character](../../translated_images/character.5c0dd8e067ffd693c16e2c5b7412ab075a2215ce31f998305639fa3a05e14fbe.br.png) @@ -83,7 +83,7 @@ Visite [https://aka.ms/genai-js-course](../../[https:/aka.ms/genai-js-course) pa > **Professores**, incluímos [algumas sugestões](for-teachers.md) sobre como usar este currículo. Adoraríamos receber seu feedback [em nosso fórum de discussão](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! -**[Estudantes](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, para cada lição, comece com um quiz pré-aula e siga lendo o material da aula, completando as várias atividades e verificando sua compreensão com o quiz pós-aula. +**[Estudantes](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, para cada lição, comece com um quiz pré-aula e continue lendo o material da aula, completando as várias atividades e verificando sua compreensão com o quiz pós-aula. Para melhorar sua experiência de aprendizado, conecte-se com seus colegas para trabalhar nos projetos juntos! Discussões são incentivadas em nosso [fórum de discussão](https://github.com/microsoft/Web-Dev-For-Beginners/discussions), onde nossa equipe de moderadores estará disponível para responder suas perguntas. @@ -91,10 +91,10 @@ Para aprofundar sua educação, recomendamos explorar [Microsoft Learn](https:// ### 📋 Configurando seu ambiente -Este currículo tem um ambiente de desenvolvimento pronto para uso! Ao começar, você pode optar por executar o currículo em um [Codespace](https://github.com/features/codespaces/) (_um ambiente baseado em navegador, sem necessidade de instalações_), ou localmente no seu computador usando um editor de texto como [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). +Este currículo tem um ambiente de desenvolvimento pronto para uso! Ao começar, você pode optar por executar o currículo em um [Codespace](https://github.com/features/codespaces/) (_um ambiente baseado em navegador, sem necessidade de instalações_), ou localmente em seu computador usando um editor de texto como [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). #### Crie seu repositório -Para salvar seu trabalho facilmente, é recomendado que você crie sua própria cópia deste repositório. Você pode fazer isso clicando no botão **Use this template** no topo da página. Isso criará um novo repositório na sua conta do GitHub com uma cópia do currículo. +Para salvar seu trabalho facilmente, é recomendado que você crie sua própria cópia deste repositório. Você pode fazer isso clicando no botão **Use this template** no topo da página. Isso criará um novo repositório em sua conta do GitHub com uma cópia do currículo. Siga estas etapas: 1. **Faça um Fork do Repositório**: Clique no botão "Fork" no canto superior direito desta página. @@ -112,12 +112,11 @@ Para executar este currículo localmente no seu computador, você precisará de Nossa recomendação é usar [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) como seu editor, que também possui um [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) integrado. Você pode baixar o Visual Studio Code [aqui](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). - -1. Clone seu repositório para o seu computador. Você pode fazer isso clicando no botão **Code** e copiando o URL: +1. Clone seu repositório para seu computador. Você pode fazer isso clicando no botão **Code** e copiando a URL: [CodeSpace](./images/createcodespace.png) - Em seguida, abra o [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) dentro do [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) e execute o seguinte comando, substituindo `` pelo URL que você acabou de copiar: + Em seguida, abra o [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) dentro do [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) e execute o seguinte comando, substituindo `` pela URL que você acabou de copiar: ```bash git clone @@ -125,71 +124,70 @@ Nossa recomendação é usar [Visual Studio Code](https://code.visualstudio.com/ 2. Abra a pasta no Visual Studio Code. Você pode fazer isso clicando em **File** > **Open Folder** e selecionando a pasta que você acabou de clonar. - -> Extensões recomendadas para o Visual Studio Code: +> Extensões recomendadas para Visual Studio Code: > -> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - para visualizar páginas HTML no Visual Studio Code +> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - para visualizar páginas HTML dentro do Visual Studio Code > * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - para ajudar você a escrever código mais rápido ## 📂 Cada aula inclui: - sketchnote opcional - vídeo complementar opcional -- questionário de aquecimento antes da aula +- quiz de aquecimento antes da aula - aula escrita - para aulas baseadas em projetos, guias passo a passo sobre como construir o projeto -- verificação de conhecimento +- verificações de conhecimento - um desafio - leitura complementar - tarefa -- [questionário pós-aula](https://ff-quizzes.netlify.app/web/) +- [quiz pós-aula](https://ff-quizzes.netlify.app/web/) -> **Uma nota sobre os questionários**: Todos os questionários estão contidos na pasta Quiz-app, totalizando 48 questionários com três perguntas cada. Eles estão disponíveis [aqui](https://ff-quizzes.netlify.app/web/) e o aplicativo de questionários pode ser executado localmente ou implantado no Azure; siga as instruções na pasta `quiz-app`. +> **Uma observação sobre os quizzes**: Todos os quizzes estão contidos na pasta Quiz-app, totalizando 48 quizzes com três perguntas cada. Eles estão disponíveis [aqui](https://ff-quizzes.netlify.app/web/) e o aplicativo de quiz pode ser executado localmente ou implantado no Azure; siga as instruções na pasta `quiz-app`. ## 🗃️ Aulas | | Nome do Projeto | Conceitos Ensinados | Objetivos de Aprendizagem | Aula Vinculada | Autor | -| :-: | :---------------------------------------------------------: | :------------------------------------------------------------------------: | ---------------------------------------------------------------------------------------------------------------------------------- | :-----------------------------------------------------------------------------------------------------------------------------: | :--------------------: | -| 01 | Primeiros Passos | Introdução à Programação e Ferramentas de Trabalho | Aprenda os fundamentos básicos por trás da maioria das linguagens de programação e sobre os softwares que ajudam desenvolvedores | [Introdução às Linguagens de Programação e Ferramentas de Trabalho](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine | -| 02 | Primeiros Passos | Noções básicas do GitHub, incluindo trabalho em equipe | Como usar o GitHub em seu projeto e colaborar com outros em um código base | [Introdução ao GitHub](./1-getting-started-lessons/2-github-basics/README.md) | Floor | -| 03 | Primeiros Passos | Acessibilidade | Aprenda os fundamentos da acessibilidade na web | [Fundamentos de Acessibilidade](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | -| 04 | Fundamentos de JS | Tipos de Dados em JavaScript | Os fundamentos dos tipos de dados em JavaScript | [Tipos de Dados](./2-js-basics/1-data-types/README.md) | Jasmine | -| 05 | Fundamentos de JS | Funções e Métodos | Aprenda sobre funções e métodos para gerenciar o fluxo lógico de uma aplicação | [Funções e Métodos](./2-js-basics/2-functions-methods/README.md) | Jasmine e Christopher | -| 06 | Fundamentos de JS | Tomando Decisões com JS | Aprenda como criar condições no seu código usando métodos de tomada de decisão | [Tomando Decisões](./2-js-basics/3-making-decisions/README.md) | Jasmine | -| 07 | Fundamentos de JS | Arrays e Loops | Trabalhe com dados usando arrays e loops em JavaScript | [Arrays e Loops](./2-js-basics/4-arrays-loops/README.md) | Jasmine | -| 08 | [Terrário](./3-terrarium/solution/README.md) | Prática de HTML | Construa o HTML para criar um terrário online, focando na construção de um layout | [Introdução ao HTML](./3-terrarium/1-intro-to-html/README.md) | Jen | -| 09 | [Terrário](./3-terrarium/solution/README.md) | Prática de CSS | Construa o CSS para estilizar o terrário online, focando nos fundamentos do CSS, incluindo tornar a página responsiva | [Introdução ao CSS](./3-terrarium/2-intro-to-css/README.md) | Jen | -| 10 | [Terrário](./3-terrarium/solution/README.md) | Closures em JavaScript, manipulação do DOM | Construa o JavaScript para fazer o terrário funcionar como uma interface de arrastar/soltar, focando em closures e manipulação do DOM | [Closures em JavaScript, manipulação do DOM](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | -| 11 | [Jogo de Digitação](./4-typing-game/solution/README.md) | Construa um Jogo de Digitação | Aprenda como usar eventos de teclado para conduzir a lógica do seu aplicativo JavaScript | [Programação Orientada a Eventos](./4-typing-game/typing-game/README.md) | Christopher | -| 12 | [Extensão de Navegador Verde](./5-browser-extension/solution/README.md) | Trabalhando com Navegadores | Aprenda como os navegadores funcionam, sua história e como estruturar os primeiros elementos de uma extensão de navegador | [Sobre Navegadores](./5-browser-extension/1-about-browsers/README.md) | Jen | -| 13 | [Extensão de Navegador Verde](./5-browser-extension/solution/README.md) | Construindo um formulário, chamando uma API e armazenando variáveis no local storage | Construa os elementos JavaScript da sua extensão de navegador para chamar uma API usando variáveis armazenadas no local storage | [APIs, Formulários e Local Storage](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | -| 14 | [Extensão de Navegador Verde](./5-browser-extension/solution/README.md) | Processos em segundo plano no navegador, desempenho na web | Use os processos em segundo plano do navegador para gerenciar o ícone da extensão; aprenda sobre desempenho na web e algumas otimizações | [Tarefas em Segundo Plano e Desempenho](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | -| 15 | [Jogo Espacial](./6-space-game/solution/README.md) | Desenvolvimento de Jogos Avançados com JavaScript | Aprenda sobre Herança usando Classes e Composição e o padrão Pub/Sub, como preparação para construir um jogo | [Introdução ao Desenvolvimento de Jogos Avançados](./6-space-game/1-introduction/README.md) | Chris | -| 16 | [Jogo Espacial](./6-space-game/solution/README.md) | Desenhando no Canvas | Aprenda sobre a API Canvas, usada para desenhar elementos na tela | [Desenhando no Canvas](./6-space-game/2-drawing-to-canvas/README.md) | Chris | -| 17 | [Jogo Espacial](./6-space-game/solution/README.md) | Movendo elementos pela tela | Descubra como os elementos podem ganhar movimento usando coordenadas cartesianas e a API Canvas | [Movendo Elementos pela Tela](./6-space-game/3-moving-elements-around/README.md) | Chris | -| 18 | [Jogo Espacial](./6-space-game/solution/README.md) | Detecção de colisão | Faça os elementos colidirem e reagirem uns aos outros usando teclas e forneça uma função de cooldown para garantir o desempenho do jogo | [Detecção de Colisão](./6-space-game/4-collision-detection/README.md) | Chris | -| 19 | [Jogo Espacial](./6-space-game/solution/README.md) | Contabilizando pontos | Realize cálculos matemáticos com base no status e desempenho do jogo | [Contabilizando Pontos](./6-space-game/5-keeping-score/README.md) | Chris | -| 20 | [Jogo Espacial](./6-space-game/solution/README.md) | Finalizando e reiniciando o jogo | Aprenda sobre como finalizar e reiniciar o jogo, incluindo limpar recursos e redefinir valores de variáveis | [Condição de Término](./6-space-game/6-end-condition/README.md) | Chris | -| 21 | [App Bancário](./7-bank-project/solution/README.md) | Templates HTML e Rotas em um Aplicativo Web | Aprenda como criar a estrutura de arquitetura de um site multipáginas usando rotas e templates HTML | [Templates HTML e Rotas](./7-bank-project/1-template-route/README.md) | Yohan | -| 22 | [App Bancário](./7-bank-project/solution/README.md) | Construindo um Formulário de Login e Registro | Aprenda sobre como construir formulários e lidar com rotinas de validação | [Formulários](./7-bank-project/2-forms/README.md) | Yohan | -| 23 | [App Bancário](./7-bank-project/solution/README.md) | Métodos de Obtenção e Uso de Dados | Como os dados fluem para dentro e fora do seu aplicativo, como obtê-los, armazená-los e descartá-los | [Dados](./7-bank-project/3-data/README.md) | Yohan | -| 24 | [App Bancário](./7-bank-project/solution/README.md) | Conceitos de Gerenciamento de Estado | Aprenda como seu aplicativo mantém o estado e como gerenciá-lo programaticamente | [Gerenciamento de Estado](./7-bank-project/4-state-management/README.md) | Yohan | -| 25 | [Código do Navegador/VSCode](../../8-code-editor) | Trabalhando com VSCode | Aprenda como usar um editor de código | [Usando o Editor de Código VSCode](./8-code-editor/1-using-a-code-editor/README.md) | Chris | +| :-: | :----------------------------------------------------------: | :------------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------: | :---------------------: | +| 01 | Primeiros Passos | Introdução à Programação e Ferramentas de Trabalho | Aprenda os fundamentos básicos por trás da maioria das linguagens de programação e sobre softwares que ajudam desenvolvedores profissionais | [Introdução às Linguagens de Programação e Ferramentas de Trabalho](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine | +| 02 | Primeiros Passos | Noções Básicas do GitHub, incluindo trabalho em equipe | Como usar o GitHub em seu projeto e colaborar com outros em um código base | [Introdução ao GitHub](./1-getting-started-lessons/2-github-basics/README.md) | Floor | +| 03 | Primeiros Passos | Acessibilidade | Aprenda os fundamentos de acessibilidade na web | [Fundamentos de Acessibilidade](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | +| 04 | Fundamentos de JS | Tipos de Dados em JavaScript | Os fundamentos dos tipos de dados em JavaScript | [Tipos de Dados](./2-js-basics/1-data-types/README.md) | Jasmine | +| 05 | Fundamentos de JS | Funções e Métodos | Aprenda sobre funções e métodos para gerenciar o fluxo lógico de uma aplicação | [Funções e Métodos](./2-js-basics/2-functions-methods/README.md) | Jasmine e Christopher | +| 06 | Fundamentos de JS | Tomando Decisões com JS | Aprenda como criar condições no seu código usando métodos de tomada de decisão | [Tomando Decisões](./2-js-basics/3-making-decisions/README.md) | Jasmine | +| 07 | Fundamentos de JS | Arrays e Loops | Trabalhe com dados usando arrays e loops em JavaScript | [Arrays e Loops](./2-js-basics/4-arrays-loops/README.md) | Jasmine | +| 08 | [Terrário](./3-terrarium/solution/README.md) | HTML na Prática | Construa o HTML para criar um terrário online, focando na construção de um layout | [Introdução ao HTML](./3-terrarium/1-intro-to-html/README.md) | Jen | +| 09 | [Terrário](./3-terrarium/solution/README.md) | CSS na Prática | Construa o CSS para estilizar o terrário online, focando nos fundamentos do CSS, incluindo tornar a página responsiva | [Introdução ao CSS](./3-terrarium/2-intro-to-css/README.md) | Jen | +| 10 | [Terrário](./3-terrarium/solution/README.md) | Closures em JavaScript, manipulação do DOM | Construa o JavaScript para fazer o terrário funcionar como uma interface de arrastar/soltar, focando em closures e manipulação do DOM | [Closures em JavaScript, manipulação do DOM](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | +| 11 | [Jogo de Digitação](./4-typing-game/solution/README.md) | Construa um Jogo de Digitação | Aprenda como usar eventos de teclado para conduzir a lógica do seu aplicativo JavaScript | [Programação Orientada a Eventos](./4-typing-game/typing-game/README.md) | Christopher | +| 12 | [Extensão de Navegador Verde](./5-browser-extension/solution/README.md) | Trabalhando com Navegadores | Aprenda como os navegadores funcionam, sua história e como estruturar os primeiros elementos de uma extensão de navegador | [Sobre Navegadores](./5-browser-extension/1-about-browsers/README.md) | Jen | +| 13 | [Extensão de Navegador Verde](./5-browser-extension/solution/README.md) | Construindo um formulário, chamando uma API e armazenando variáveis no local storage | Construa os elementos JavaScript da sua extensão de navegador para chamar uma API usando variáveis armazenadas no local storage | [APIs, Formulários e Local Storage](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | +| 14 | [Extensão de Navegador Verde](./5-browser-extension/solution/README.md) | Processos em segundo plano no navegador, desempenho na web | Use os processos em segundo plano do navegador para gerenciar o ícone da extensão; aprenda sobre desempenho na web e algumas otimizações | [Tarefas em Segundo Plano e Desempenho](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | +| 15 | [Jogo Espacial](./6-space-game/solution/README.md) | Desenvolvimento de Jogos Mais Avançado com JavaScript | Aprenda sobre Herança usando Classes e Composição e o padrão Pub/Sub, em preparação para construir um jogo | [Introdução ao Desenvolvimento de Jogos Avançado](./6-space-game/1-introduction/README.md) | Chris | +| 16 | [Jogo Espacial](./6-space-game/solution/README.md) | Desenhando no Canvas | Aprenda sobre a API Canvas, usada para desenhar elementos na tela | [Desenhando no Canvas](./6-space-game/2-drawing-to-canvas/README.md) | Chris | +| 17 | [Jogo Espacial](./6-space-game/solution/README.md) | Movendo elementos pela tela | Descubra como os elementos podem ganhar movimento usando coordenadas cartesianas e a API Canvas | [Movendo Elementos pela Tela](./6-space-game/3-moving-elements-around/README.md) | Chris | +| 18 | [Jogo Espacial](./6-space-game/solution/README.md) | Detecção de Colisões | Faça os elementos colidirem e reagirem uns aos outros usando teclas pressionadas e forneça uma função de cooldown para garantir o desempenho do jogo | [Detecção de Colisões](./6-space-game/4-collision-detection/README.md) | Chris | +| 19 | [Jogo Espacial](./6-space-game/solution/README.md) | Mantendo a Pontuação | Realize cálculos matemáticos com base no status e desempenho do jogo | [Mantendo a Pontuação](./6-space-game/5-keeping-score/README.md) | Chris | +| 20 | [Jogo Espacial](./6-space-game/solution/README.md) | Finalizando e Reiniciando o Jogo | Aprenda sobre como finalizar e reiniciar o jogo, incluindo limpar os recursos e redefinir valores de variáveis | [Condição de Finalização](./6-space-game/6-end-condition/README.md) | Chris | +| 21 | [App Bancário](./7-bank-project/solution/README.md) | Templates HTML e Rotas em um Aplicativo Web | Aprenda como criar a estrutura de arquitetura de um site multipágina usando rotas e templates HTML | [Templates HTML e Rotas](./7-bank-project/1-template-route/README.md) | Yohan | +| 22 | [App Bancário](./7-bank-project/solution/README.md) | Construindo um Formulário de Login e Registro | Aprenda sobre como construir formulários e lidar com rotinas de validação | [Formulários](./7-bank-project/2-forms/README.md) | Yohan | +| 23 | [App Bancário](./7-bank-project/solution/README.md) | Métodos de Busca e Uso de Dados | Como os dados fluem dentro e fora do seu aplicativo, como buscá-los, armazená-los e descartá-los | [Dados](./7-bank-project/3-data/README.md) | Yohan | +| 24 | [App Bancário](./7-bank-project/solution/README.md) | Conceitos de Gerenciamento de Estado | Aprenda como seu aplicativo mantém o estado e como gerenciá-lo programaticamente | [Gerenciamento de Estado](./7-bank-project/4-state-management/README.md) | Yohan | +| 25 | [Editor de Código Browser/VScode](../../8-code-editor) | Trabalhando com VScode | Aprenda como usar um editor de código | [Usando o Editor de Código VScode](./8-code-editor/1-using-a-code-editor/README.md) | Chris | | 26 | [Assistentes de IA](./9-chat-project/README.md) | Trabalhando com IA | Aprenda como construir seu próprio assistente de IA | [Projeto de Assistente de IA](./9-chat-project/README.md) | Chris | ## 🏫 Pedagogia Nosso currículo foi projetado com dois princípios pedagógicos principais em mente: * aprendizado baseado em projetos -* questionários frequentes +* quizzes frequentes -O programa ensina os fundamentos de JavaScript, HTML e CSS, bem como as ferramentas e técnicas mais recentes usadas pelos desenvolvedores web de hoje. Os alunos terão a oportunidade de desenvolver experiência prática ao construir um jogo de digitação, um terrário virtual, uma extensão de navegador ecológica, um jogo estilo "space invaders" e um aplicativo bancário para empresas. Ao final da série, os alunos terão adquirido uma sólida compreensão do desenvolvimento web. +O programa ensina os fundamentos de JavaScript, HTML e CSS, bem como as ferramentas e técnicas mais recentes usadas pelos desenvolvedores web de hoje. Os alunos terão a oportunidade de desenvolver experiência prática construindo um jogo de digitação, um terrário virtual, uma extensão de navegador ecológica, um jogo estilo "space invader" e um aplicativo bancário para empresas. Ao final da série, os alunos terão adquirido uma compreensão sólida do desenvolvimento web. > 🎓 Você pode fazer as primeiras aulas deste currículo como um [Caminho de Aprendizado](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) no Microsoft Learn! -Ao garantir que o conteúdo esteja alinhado com os projetos, o processo se torna mais envolvente para os alunos e a retenção dos conceitos será aumentada. Também escrevemos várias aulas introdutórias sobre os fundamentos de JavaScript para apresentar conceitos, acompanhadas de um vídeo da coleção "[Série para Iniciantes: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" de tutoriais em vídeo, alguns dos quais foram contribuídos pelos autores deste currículo. +Ao garantir que o conteúdo esteja alinhado com os projetos, o processo se torna mais envolvente para os alunos e a retenção dos conceitos será aumentada. Também escrevemos várias aulas introdutórias sobre os fundamentos de JavaScript para apresentar conceitos, acompanhadas de um vídeo da coleção "[Série para Iniciantes: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)", alguns dos quais os autores contribuíram para este currículo. -Além disso, um questionário de baixa pressão antes da aula define a intenção do aluno em aprender um tópico, enquanto um segundo questionário após a aula garante maior retenção. Este currículo foi projetado para ser flexível e divertido e pode ser realizado em sua totalidade ou em partes. Os projetos começam pequenos e se tornam cada vez mais complexos ao final do ciclo de 12 semanas. +Além disso, um quiz de baixa pressão antes da aula define a intenção do aluno em aprender um tópico, enquanto um segundo quiz após a aula garante maior retenção. Este currículo foi projetado para ser flexível e divertido e pode ser feito em sua totalidade ou em partes. Os projetos começam pequenos e se tornam cada vez mais complexos ao final do ciclo de 12 semanas. Embora tenhamos evitado intencionalmente introduzir frameworks JavaScript para nos concentrar nas habilidades básicas necessárias como desenvolvedor web antes de adotar um framework, um bom próximo passo após concluir este currículo seria aprender sobre Node.js por meio de outra coleção de vídeos: "[Série para Iniciantes: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)". @@ -207,48 +205,47 @@ Um PDF de todas as aulas pode ser encontrado [aqui](https://microsoft.github.io/ Nossa equipe produz outros cursos! Confira: -### Azure / Edge / MCP / Agentes +### Azure / Edge / MCP / Agents [![AZD para Iniciantes](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst) -[![Edge AI para Iniciantes](https://img.shields.io/badge/Edge%20AI%20para%20Iniciantes-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst) -[![MCP para Iniciantes](https://img.shields.io/badge/MCP%20para%20Iniciantes-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst) -[![Agentes de IA para Iniciantes](https://img.shields.io/badge/Agentes%20de%20IA%20para%20Iniciantes-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst) +[![Edge AI para Iniciantes](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst) +[![MCP para Iniciantes](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst) +[![Agentes de IA para Iniciantes](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst) --- ### Série de IA Generativa -[![IA Generativa para Iniciantes](https://img.shields.io/badge/IA%20Generativa%20para%20Iniciantes-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst) -[![IA Generativa (.NET)](https://img.shields.io/badge/IA%20Generativa%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst) -[![IA Generativa (Java)](https://img.shields.io/badge/IA%20Generativa%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst) -[![IA Generativa (JavaScript)](https://img.shields.io/badge/IA%20Generativa%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst) +[![IA Generativa para Iniciantes](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst) +[![IA Generativa (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst) +[![IA Generativa (Java)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst) +[![IA Generativa (JavaScript)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst) --- ### Aprendizado Essencial -[![ML para Iniciantes](https://img.shields.io/badge/ML%20para%20Iniciantes-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst) -[![Ciência de Dados para Iniciantes](https://img.shields.io/badge/Ciência%20de%20Dados%20para%20Iniciantes-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst) -[![IA para Iniciantes](https://img.shields.io/badge/IA%20para%20Iniciantes-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst) -[![Cibersegurança para Iniciantes](https://img.shields.io/badge/Cibersegurança%20para%20Iniciantes-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung) -[![Desenvolvimento Web para Iniciantes](https://img.shields.io/badge/Desenvolvimento%20Web%20para%20Iniciantes-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst) -[![IoT para Iniciantes](https://img.shields.io/badge/IoT%20para%20Iniciantes-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst) -[![Desenvolvimento XR para Iniciantes](https://img.shields.io/badge/Desenvolvimento%20XR%20para%20Iniciantes-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst) +[![ML para Iniciantes](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst) +[![Ciência de Dados para Iniciantes](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst) +[![IA para Iniciantes](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst) +[![Cibersegurança para Iniciantes](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung) +[![Desenvolvimento Web para Iniciantes](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst) +[![IoT para Iniciantes](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst) +[![Desenvolvimento XR para Iniciantes](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst) --- ### Série Copilot -[![Copilot para Programação em Par com IA](https://img.shields.io/badge/Copilot%20para%20Programação%20em%20Par%20com%20IA-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst) -[![Copilot para C#/.NET](https://img.shields.io/badge/Copilot%20para%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst) -[![Aventura Copilot](https://img.shields.io/badge/Aventura%20Copilot-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst) - +[![Copilot para Programação em Par com IA](https://img.shields.io/badge/Copilot%20for%20AI%20Paired%20Programming-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst) +[![Copilot para C#/.NET](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst) +[![Aventura Copilot](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst) ## Obtendo Ajuda -Se você estiver com dificuldades ou tiver dúvidas sobre como criar aplicativos de IA, participe: +Se você ficar preso ou tiver dúvidas sobre como construir aplicativos de IA, junte-se a outros aprendizes e desenvolvedores experientes em discussões sobre MCP. É uma comunidade de apoio onde perguntas são bem-vindas e o conhecimento é compartilhado livremente. -[![Discord Azure AI Foundry](https://img.shields.io/badge/Discord-Comunidade_Discord_Azure_AI_Foundry-blue?style=for-the-badge&logo=discord&color=5865f2&logoColor=fff)](https://aka.ms/foundry/discord) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) Se você tiver feedback sobre produtos ou encontrar erros durante o desenvolvimento, visite: -[![Fórum de Desenvolvedores Azure AI Foundry](https://img.shields.io/badge/GitHub-Fórum_de_Desenvolvedores_Azure_AI_Foundry-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) +[![Fórum de Desenvolvedores Microsoft Foundry](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) ## Licença @@ -256,5 +253,7 @@ Este repositório está licenciado sob a licença MIT. Veja o arquivo [LICENSE]( --- + **Aviso Legal**: -Este documento foi traduzido utilizando o serviço de tradução por IA [Co-op Translator](https://github.com/Azure/co-op-translator). Embora nos esforcemos para garantir a precisão, esteja ciente de que traduções automatizadas podem conter erros ou imprecisões. O documento original em seu idioma nativo deve ser considerado a fonte autoritativa. Para informações críticas, recomenda-se a tradução profissional humana. Não nos responsabilizamos por quaisquer mal-entendidos ou interpretações incorretas decorrentes do uso desta tradução. \ No newline at end of file +Este documento foi traduzido utilizando o serviço de tradução por IA [Co-op Translator](https://github.com/Azure/co-op-translator). Embora nos esforcemos para garantir a precisão, esteja ciente de que traduções automáticas podem conter erros ou imprecisões. O documento original em seu idioma nativo deve ser considerado a fonte oficial. Para informações críticas, recomenda-se a tradução profissional humana. Não nos responsabilizamos por quaisquer mal-entendidos ou interpretações incorretas decorrentes do uso desta tradução. + \ No newline at end of file diff --git a/translations/fi/1-getting-started-lessons/2-github-basics/README.md b/translations/fi/1-getting-started-lessons/2-github-basics/README.md index e04033da..157a8efc 100644 --- a/translations/fi/1-getting-started-lessons/2-github-basics/README.md +++ b/translations/fi/1-getting-started-lessons/2-github-basics/README.md @@ -1,42 +1,41 @@ # Johdanto GitHubiin -Hei tuleva kehittäjä! 👋 Oletko valmis liittymään miljoonien koodareiden joukkoon ympäri maailmaa? Olen todella innoissani saadessani esitellä sinulle GitHubin – ajattele sitä ohjelmoijien sosiaalisena mediana, jossa lounaskuvien jakamisen sijaan jaamme koodia ja rakennamme yhdessä upeita asioita! +Hei tuleva kehittäjä! 👋 Oletko valmis liittymään miljoonien koodareiden joukkoon ympäri maailmaa? Olen todella innoissani saadessani esitellä sinulle GitHubin – ajattele sitä ohjelmoijien sosiaalisen median alustana, mutta sen sijaan että jakaisimme kuvia lounaastamme, jaamme koodia ja rakennamme yhdessä uskomattomia asioita! -Tämä on aivan uskomatonta: jokainen sovellus puhelimessasi, jokainen verkkosivusto, jolla vierailet, ja suurin osa työkaluista, joita opit käyttämään, on rakennettu kehittäjätiimien yhteistyönä juuri tällaisilla alustoilla kuin GitHub. Se musiikkisovellus, jota rakastat? Joku kaltaisesi on ollut mukana sen kehittämisessä. Se peli, jota et voi lopettaa? Jep, sekin on todennäköisesti rakennettu GitHubin avulla. Ja nyt SINÄ opit, miten olla osa tätä mahtavaa yhteisöä! +Tämä on aivan uskomatonta: jokainen sovellus puhelimessasi, jokainen verkkosivusto, jolla vierailet, ja suurin osa työkaluista, joita opit käyttämään, on rakennettu kehittäjätiimien yhteistyöllä alustoilla kuten GitHub. Se musiikkisovellus, jota rakastat? Joku kuten sinä on osallistunut sen kehittämiseen. Se peli, jota et voi lopettaa? Jep, todennäköisesti rakennettu GitHubin avulla. Ja nyt SINÄ opit, miten olla osa tätä upeaa yhteisöä! -Tiedän, että tämä voi tuntua aluksi paljolta – muistan itsekin tuijottaneeni ensimmäistä GitHub-sivua ja miettineeni "Mitä ihmettä tämä kaikki tarkoittaa?" Mutta tässä on juttu: jokainen kehittäjä on aloittanut juuri siitä, missä sinä olet nyt. Tämän oppitunnin lopussa sinulla on oma GitHub-repositorio (ajattele sitä henkilökohtaisena projektiesittelynä pilvessä), ja osaat tallentaa työsi, jakaa sen muiden kanssa ja jopa osallistua projekteihin, joita miljoonat ihmiset käyttävät. +Tiedän, että tämä voi tuntua aluksi paljolta – muistan itsekin tuijottaneeni ensimmäistä GitHub-sivua ja ajatelleeni "Mitä ihmettä tämä kaikki tarkoittaa?" Mutta tässä on juttu: jokainen kehittäjä on aloittanut juuri siitä, missä sinä olet nyt. Tämän oppitunnin lopussa sinulla on oma GitHub-repositorio (ajattele sitä henkilökohtaisena projektiesittelynä pilvessä), ja tiedät, miten tallentaa työsi, jakaa sen muiden kanssa ja jopa osallistua projekteihin, joita miljoonat ihmiset käyttävät. -Lähdetään yhdessä tälle matkalle, askel kerrallaan. Ei kiirettä, ei paineita – vain sinä, minä ja todella siistit työkalut, joista tulee pian uusia parhaita ystäviäsi! +Otamme tämän matkan yhdessä, askel kerrallaan. Ei kiirettä, ei painetta – vain sinä, minä ja muutama todella siisti työkalu, joista tulee pian uusia parhaita ystäviäsi! ![Johdanto GitHubiin](../../../../translated_images/webdev101-github.8846d7971abef6f947909b4f9d343e2a23778aa716ca6b9d71df7174ee5009ac.fi.png) > Sketchnote: [Tomomi Imura](https://twitter.com/girlie_mac) ```mermaid journey - title Your GitHub Adventure Today - section Setup - Install Git: 4: You - Create Account: 5: You - First Repository: 5: You - section Master Git - Local Changes: 4: You - Commits & Pushes: 5: You - Branching: 4: You - section Collaborate - Fork Projects: 4: You - Pull Requests: 5: You - Open Source: 5: You + title GitHub-seikkailusi tänään + section Asetukset + Asenna Git: 4: Sinä + Luo tili: 5: Sinä + Ensimmäinen arkisto: 5: Sinä + section Hallitse Git + Paikalliset muutokset: 4: Sinä + Commitit & Pushit: 5: Sinä + Haarautuminen: 4: Sinä + section Yhteistyö + Forkkaa projektit: 4: Sinä + Pull-pyynnöt: 5: Sinä + Avoin lähdekoodi: 5: Sinä ``` - ## Ennakkokysely [Ennakkokysely](https://ff-quizzes.netlify.app) @@ -44,24 +43,24 @@ journey Ennen kuin sukellamme todella jännittäviin asioihin, laitetaan tietokoneesi valmiiksi GitHub-taikuutta varten! Ajattele tätä kuin taidetarvikkeiden järjestämistä ennen mestariteoksen luomista – oikeiden työkalujen valmiiksi saaminen tekee kaikesta sujuvampaa ja paljon hauskempaa. -Käyn kanssasi läpi jokaisen asennusvaiheen henkilökohtaisesti, ja lupaan, ettei se ole läheskään niin pelottavaa kuin miltä se saattaa aluksi näyttää. Jos jokin ei heti tunnu selkeältä, se on täysin normaalia! Muistan itsekin ensimmäisen kehitysympäristöni asennuksen ja tunteen, että yritin tulkita muinaisia hieroglyfejä. Jokainen kehittäjä on ollut juuri siinä tilanteessa, missä sinä olet nyt, miettien, tekeekö kaiken oikein. Vihje: jos olet täällä oppimassa, teet jo kaiken oikein! 🌟 +Käyn kanssasi läpi jokaisen asennusvaiheen henkilökohtaisesti, ja lupaan, ettei se ole läheskään niin pelottavaa kuin miltä se saattaa aluksi näyttää. Jos jokin ei heti tunnu selkeältä, se on täysin normaalia! Muistan itsekin ensimmäisen kehitysympäristöni asennuksen ja tunteen kuin yrittäisin lukea muinaisia hieroglyfejä. Jokainen kehittäjä on ollut juuri siinä, missä sinä olet nyt, miettien, tekeekö kaiken oikein. Spoilerivaroitus: jos olet täällä oppimassa, teet jo oikein! 🌟 -Tässä oppitunnissa käsittelemme: +Tässä oppitunnissa käsitellään: -- työn seuraamista omalla koneellasi -- projektien työstämistä yhdessä muiden kanssa +- työn seuraamista koneellasi +- projektien tekemistä yhdessä muiden kanssa - avoimen lähdekoodin ohjelmistojen kehittämiseen osallistumista ### Esivaatimukset Laitetaan tietokoneesi valmiiksi GitHub-taikuutta varten! Älä huoli – tämä asennus tehdään vain kerran, ja sen jälkeen olet valmis koko koodausmatkallesi. -Aloitetaan perusasioista! Ensin meidän täytyy tarkistaa, onko Git jo asennettuna koneellesi. Git on kuin superälykäs assistentti, joka muistaa jokaisen muutoksen, jonka teet koodissasi – paljon parempi kuin Ctrl+S:n hakkaaminen joka toinen sekunti (olemme kaikki olleet siinä tilanteessa!). +Aloitetaan perusasioista! Ensin meidän täytyy tarkistaa, onko Git jo valmiiksi koneellasi. Git on kuin superälykäs avustaja, joka muistaa jokaisen muutoksen, jonka teet koodissasi – paljon parempi kuin Ctrl+S:n hakkaaminen joka toinen sekunti (olemme kaikki olleet siinä tilanteessa!). Tarkistetaan, onko Git jo asennettuna kirjoittamalla tämä maaginen komento terminaaliin: `git --version` -Jos Git ei ole vielä asennettuna, ei hätää! Siirry vain [lataamaan Git](https://git-scm.com/downloads) ja hanki se. Kun olet asentanut sen, meidän täytyy esitellä sinut Gitille kunnolla: +Jos Git ei ole vielä asennettuna, ei hätää! Mene vain [lataamaan Git](https://git-scm.com/downloads) ja hanki se. Kun olet asentanut sen, meidän täytyy esitellä Git sinulle kunnolla: > 💡 **Ensimmäinen asennus**: Nämä komennot kertovat Gitille, kuka olet. Tämä tieto liitetään jokaiseen tekemääsi commit-merkintään, joten valitse nimi ja sähköposti, jotka olet valmis jakamaan julkisesti. @@ -81,96 +80,95 @@ Siirry [github.com](https://github.com/) ja luo tili, jos sinulla ei vielä ole 💡 **Moderni vinkki**: Harkitse [SSH-avainten](https://docs.github.com/en/authentication/connecting-to-github-with-ssh) asettamista tai [GitHub CLI:n](https://cli.github.com/) käyttöä helpompaan autentikointiin ilman salasanoja. -✅ GitHub ei ole ainoa koodirepositorio maailmassa; niitä on muitakin, mutta GitHub on tunnetuin. +✅ GitHub ei ole ainoa koodivarasto maailmassa; niitä on muitakin, mutta GitHub on tunnetuin. ### Valmistelu -Tarvitset sekä koodiprojektin sisältävän kansion paikalliselle koneellesi (kannettava tai PC) että julkisen repositorion GitHubissa, joka toimii esimerkkinä siitä, miten osallistua muiden projekteihin. +Tarvitset sekä koodiprojektin sisältävän kansion paikallisella koneellasi (kannettava tai PC) että julkisen repositorion GitHubissa, joka toimii esimerkkinä siitä, miten osallistua muiden projekteihin. ### Koodisi turvaaminen -Puhutaan hetki turvallisuudesta – mutta älä huoli, emme aio hukuttaa sinua pelottavilla asioilla! Ajattele näitä turvallisuuskäytäntöjä kuin auton tai kodin lukitsemista. Ne ovat yksinkertaisia tapoja, jotka muuttuvat rutiiniksi ja pitävät kovan työsi turvassa. +Puhutaan hetki turvallisuudesta – mutta älä huoli, emme aio hukuttaa sinua pelottavilla asioilla! Ajattele näitä turvallisuuskäytäntöjä kuin auton tai kodin lukitsemista. Ne ovat yksinkertaisia tapoja, jotka muuttuvat rutiiniksi ja pitävät työsi suojattuna. -Näytämme sinulle modernit ja turvalliset tavat työskennellä GitHubin kanssa heti alusta alkaen. Näin kehität hyviä tapoja, jotka palvelevat sinua koko koodausurasi ajan. +Näytämme sinulle modernit, turvalliset tavat työskennellä GitHubin kanssa heti alusta alkaen. Näin kehität hyviä tapoja, jotka palvelevat sinua koko koodausurasi ajan. Kun työskentelet GitHubin kanssa, on tärkeää noudattaa turvallisuuden parhaita käytäntöjä: | Turvallisuusalue | Paras käytäntö | Miksi se on tärkeää | |------------------|----------------|----------------------| -| **Autentikointi** | Käytä SSH-avaimia tai henkilökohtaisia käyttöoikeustunnuksia | Salasanat ovat vähemmän turvallisia ja poistumassa käytöstä | +| **Autentikointi** | Käytä SSH-avaimia tai henkilökohtaisia käyttöoikeustunnuksia | Salasanat ovat vähemmän turvallisia ja niitä ollaan poistamassa käytöstä | | **Kaksivaiheinen autentikointi** | Ota 2FA käyttöön GitHub-tililläsi | Lisää ylimääräisen suojakerroksen tilillesi | | **Repositorion turvallisuus** | Älä koskaan commitoi arkaluontoista tietoa | API-avaimia ja salasanoja ei koskaan pitäisi olla julkisissa repoissa | | **Riippuvuuksien hallinta** | Ota Dependabot käyttöön päivityksiä varten | Pitää riippuvuutesi turvallisina ja ajan tasalla | -> ⚠️ **Kriittinen turvallisuusmuistutus**: Älä koskaan commitoi API-avaimia, salasanoja tai muita arkaluontoisia tietoja mihinkään repositorioon. Käytä ympäristömuuttujia ja `.gitignore`-tiedostoja suojataksesi arkaluontoiset tiedot. +> ⚠️ **Kriittinen turvallisuusmuistutus**: Älä koskaan commitoi API-avaimia, salasanoja tai muuta arkaluontoista tietoa mihinkään repositorioon. Käytä ympäristömuuttujia ja `.gitignore`-tiedostoja suojataksesi arkaluontoiset tiedot. **Moderni autentikointiasetus:** ```bash -# Generate SSH key (modern ed25519 algorithm) +# Luo SSH-avain (moderni ed25519-algoritmi) ssh-keygen -t ed25519 -C "your_email@example.com" -# Set up Git to use SSH +# Määritä Git käyttämään SSH:ta git remote set-url origin git@github.com:username/repository.git ``` -> 💡 **Vinkki ammattilaisilta**: SSH-avaimet poistavat tarpeen syöttää salasanoja toistuvasti ja ovat turvallisempia kuin perinteiset autentikointimenetelmät. +> 💡 **Pro-vinkki**: SSH-avaimet poistavat tarpeen syöttää salasanoja toistuvasti ja ovat turvallisempia kuin perinteiset autentikointimenetelmät. --- ## Koodisi hallinta kuin ammattilainen -Nyt päästään todella jännittäviin asioihin! 🎉 Opimme, miten seurata ja hallita koodiasi kuin ammattilaiset, ja rehellisesti sanottuna tämä on yksi suosikkiasioistani opettaa, koska se on todellinen pelin muuttaja. +Okei, TÄMÄ on se kohta, jossa asiat muuttuvat todella jännittäviksi! 🎉 Olemme oppimassa, miten seurata ja hallita koodiasi kuin ammattilaiset, ja rehellisesti sanottuna tämä on yksi suosikkiasioistani opettaa, koska se on niin mullistavaa. -Kuvittele tämä: kirjoitat upeaa tarinaa ja haluat pitää kirjaa jokaisesta luonnoksesta, jokaisesta nerokkaasta muokkauksesta ja jokaisesta "hei, tämä on nerokasta!" -hetkestä matkan varrella. Juuri sitä Git tekee koodillesi! Se on kuin uskomaton aikamatkustava muistikirja, joka muistaa KAIKEN – jokaisen näppäimen painalluksen, jokaisen muutoksen, jokaisen "oi ei, tämä rikkoi kaiken" -hetken, jonka voit välittömästi perua. +Kuvittele tämä: kirjoitat upeaa tarinaa ja haluat pitää kirjaa jokaisesta luonnoksesta, jokaisesta loistavasta muokkauksesta ja jokaisesta "hei, tämä on nerokasta!" hetkestä matkan varrella. Juuri sitä Git tekee koodillesi! Se on kuin uskomaton aikamatkustava muistikirja, joka muistaa KAIKEN – jokaisen näppäimen painalluksen, jokaisen muutoksen, jokaisen "oi ei, tämä rikkoi kaiken" hetken, jonka voit välittömästi peruuttaa. -Olen rehellinen – tämä voi tuntua aluksi ylivoimaiselta. Kun aloitin, ajattelin "Miksi en voi vain tallentaa tiedostojani normaalisti?" Mutta luota minuun tässä: kun Git alkaa tuntua tutulta (ja niin käy!), sinulla on yksi niistä lamppuhetkistä, jolloin ajattelet "Miten olen IKINÄ koodannut ilman tätä?" Se on kuin löytäisit lentokyvyn, kun olet kävellyt kaikkialle koko elämäsi! +Olen rehellinen – tämä voi tuntua aluksi ylivoimaiselta. Kun aloitin, ajattelin "Miksi en voi vain tallentaa tiedostojani normaalisti?" Mutta luota minuun tässä: kun Git alkaa tuntua tutulta (ja se tulee!), sinulla on yksi niistä lamppuhetkistä, jolloin ajattelet "Miten olen IKINÄ koodannut ilman tätä?" Se on kuin löytäisit, että osaat lentää, kun olet kävellyt kaikkialle koko elämäsi! -Oletetaan, että sinulla on paikallisesti kansio, jossa on koodiprojekti, ja haluat alkaa seurata edistymistäsi git-versionhallintajärjestelmän avulla. Jotkut vertaavat gitin käyttöä rakkauskirjeen kirjoittamiseen tulevalle itsellesi. Kun luet commit-viestejäsi päivien, viikkojen tai kuukausien jälkeen, voit muistaa, miksi teit tietyn päätöksen, tai "peruuttaa" muutoksen – kunhan kirjoitat hyviä commit-viestejä. +Sanotaan, että sinulla on paikallisesti kansio, jossa on jokin koodiprojekti, ja haluat alkaa seurata edistymistäsi käyttämällä git-versiohallintajärjestelmää. Jotkut vertaavat gitin käyttöä rakkauskirjeen kirjoittamiseen tulevalle itsellesi. Kun luet commit-viestejäsi päivien, viikkojen tai kuukausien jälkeen, pystyt muistamaan, miksi teit tietyn päätöksen, tai "peruuttaa" muutoksen – kunhan kirjoitat hyviä "commit-viestejä". ```mermaid flowchart TD - A[📁 Your Project Files] --> B{Is it a Git Repository?} - B -->|No| C[git init] - B -->|Yes| D[Make Changes] + A[📁 Projektitiedostosi] --> B{Onko se Git-repositorio?} + B -->|Ei| C[git init] + B -->|Kyllä| D[Tee muutoksia] C --> D D --> E[git add .] - E --> F["git commit -m 'message'"] + E --> F["git commit -m 'viesti'"] F --> G[git push] - G --> H[🌟 Code on GitHub!] + G --> H[🌟 Koodi GitHubissa!] - H --> I{Want to collaborate?} - I -->|Yes| J[Fork & Clone] - I -->|No| D - J --> K[Create Branch] - K --> L[Make Changes] + H --> I{Haluatko tehdä yhteistyötä?} + I -->|Kyllä| J[Forkkaa & kloonaa] + I -->|Ei| D + J --> K[Luo haara] + K --> L[Tee muutoksia] L --> M[Pull Request] - M --> N[🎉 Contributing!] + M --> N[🎉 Osallistuminen!] style A fill:#fff59d style H fill:#c8e6c9 style N fill:#ff4081,color:#fff ``` - ### Tehtävä: Luo ensimmäinen repositoriosi! -> 🎯 **Tehtäväsi (ja olen niin innoissani puolestasi!)**: Luomme yhdessä ensimmäisen GitHub-repositoriosi! Kun olemme valmiit, sinulla on oma pieni nurkka internetissä, jossa koodisi asuu, ja olet tehnyt ensimmäisen "commitin" (se on kehittäjien kieltä työn tallentamisesta todella fiksulla tavalla). +> 🎯 **Tehtäväsi (ja olen niin innoissani puolestasi!)**: Luomme yhdessä ensimmäisen GitHub-repositoriosi! Kun olemme valmiita, sinulla on oma pieni nurkka internetissä, jossa koodisi asuu, ja olet tehnyt ensimmäisen "commitin" (se on kehittäjien kieltä työn tallentamisesta todella fiksulla tavalla). > -> Tämä on todella erityinen hetki – olet virallisesti liittymässä maailmanlaajuiseen kehittäjäyhteisöön! Muistan edelleen sen jännityksen, kun loin ensimmäisen repositorioni ja ajattelin "Vau, minä todella teen tämän!" +> Tämä on rehellisesti sanottuna erityinen hetki – olet virallisesti liittymässä maailmanlaajuiseen kehittäjäyhteisöön! Muistan edelleen sen jännityksen, kun loin ensimmäisen repositorioni ja ajattelin "Vau, minä todella teen tämän!" -Käydään tämä seikkailu yhdessä läpi, askel kerrallaan. Käy jokainen osa rauhassa läpi – kiirehtimisestä ei saa palkintoa, ja lupaan, että jokainen vaihe tulee järkeväksi. Muista, että jokainen ihailemasi koodausstara on joskus istunut juuri siinä, missä sinä olet nyt, luomassa ensimmäistä repositoriotaan. Kuinka siistiä se onkaan? +Käydään tämä seikkailu yhdessä läpi, askel kerrallaan. Ota aikaa jokaisen osan kanssa – kiirehtimisestä ei saa palkintoa, ja lupaan, että jokainen askel tulee olemaan järkevä. Muista, että jokainen ihailemasi koodausstara on joskus istunut juuri siinä, missä sinä olet nyt, luomassa ensimmäistä repositoriotaan. Kuinka siistiä se onkaan? > Katso video > -> [![Gitin ja GitHubin perusteet -video](https://img.youtube.com/vi/9R31OUPpxU4/0.jpg)](https://www.youtube.com/watch?v=9R31OUPpxU4) +> [![Git ja GitHub perusteet video](https://img.youtube.com/vi/9R31OUPpxU4/0.jpg)](https://www.youtube.com/watch?v=9R31OUPpxU4) **Tehdään tämä yhdessä:** -1. **Luo repositorio GitHubissa**. Siirry GitHub.com-sivustolle ja etsi kirkkaan vihreä **New**-painike (tai oikean yläkulman **+**-merkki). Klikkaa sitä ja valitse **New repository**. +1. **Luo repositorio GitHubissa**. Siirry GitHub.com-sivustolle ja etsi kirkkaan vihreä **New**-painike (tai **+**-merkki oikeasta yläkulmasta). Klikkaa sitä ja valitse **New repository**. Näin toimitaan: - 1. Anna repositoriolle nimi – valitse jotain, mikä merkitsee sinulle! - 1. Lisää kuvaus halutessasi (tämä auttaa muita ymmärtämään, mistä projektissasi on kyse) + 1. Anna repositoriolle nimi – tee siitä sinulle merkityksellinen! + 1. Lisää kuvaus, jos haluat (tämä auttaa muita ymmärtämään, mistä projektissasi on kyse) 1. Päätä, haluatko sen olevan julkinen (kaikki voivat nähdä sen) vai yksityinen (vain sinulle) 1. Suosittelen valitsemaan ruudun README-tiedoston lisäämiseksi – se on kuin projektisi etusivu 1. Klikkaa **Create repository** ja juhli – loit juuri ensimmäisen repositoriosi! 🎉 @@ -184,9 +182,9 @@ Käydään tämä seikkailu yhdessä läpi, askel kerrallaan. Käy jokainen osa **Mitä tässä tehdään:** - Käytännössä sanomme "Hei tietokone, vie minut projektikansiooni" - Tämä on kuin avaisi tietyn kansion työpöydällä, mutta teemme sen tekstikomennoilla - - Korvaa `[kansion nimi]` projektikansiosi oikealla nimellä + - Korvaa `[kansiosi nimi]` projektikansiosi oikealla nimellä -3. **Muuta kansiosi Git-repositorioksi**. Tässä tapahtuu taikaa! Kirjoita: +3. **Muuta kansiosi Git-repositorioksi**. Tässä tapahtuu taikuutta! Kirjoita: ```bash git init @@ -221,9 +219,9 @@ Käydään tämä seikkailu yhdessä läpi, askel kerrallaan. Käy jokainen osa - **Vihreät** tiedostot (kun näet niitä) ovat valmiita tallennettavaksi - Git on avulias ja kertoo sinulle tarkalleen, mitä voit tehdä seuraavaksi - > 💡 **Vinkki ammattilaisilta**: `git status` -komento on paras ystäväsi! Käytä sitä aina, kun olet epävarma siitä, mitä tapahtuu. Se on kuin kysyisit Gitiltä "Hei, mikä tilanne on juuri nyt?" + > 💡 **Pro-vinkki**: `git status` -komento on paras ystäväsi! Käytä sitä aina, kun olet epävarma siitä, mitä tapahtuu. Se on kuin kysyisi Gitiltä "Hei, mikä tilanne on juuri nyt?" -5. **Valmistele tiedostosi tallennettavaksi** (tätä kutsutaan "stagingiksi"): +5. **Valmista tiedostosi tallennettavaksi** (tätä kutsutaan "vaiheistamiseksi"): ```bash git add . @@ -231,8 +229,8 @@ Käydään tämä seikkailu yhdessä läpi, askel kerrallaan. Käy jokainen osa **Mitä juuri teimme:** - Kerroimme Gitille "Hei, haluan sisällyttää KAIKKI tiedostoni seuraavaan tallennukseen" - - `.` tarkoittaa "kaikki tässä kansiossa" - - Nyt tiedostosi ovat "staged" ja valmiita seuraavaan vaiheeseen + - `.` on kuin sanoisi "kaikki tässä kansiossa" + - Nyt tiedostosi ovat "vaiheistettuja" ja valmiita seuraavaan vaiheeseen **Haluatko olla valikoivampi?** Voit lisätä vain tietyt tiedostot: @@ -242,329 +240,329 @@ Käydään tämä seikkailu yhdessä läpi, askel kerrallaan. Käy jokainen osa **Miksi haluaisit tehdä näin?** - Joskus haluat tallentaa liittyvät muutokset yhdessä - - Se auttaa sinua järjestämään työsi loogisiin kokonaisuuksiin + - Se auttaa sinua järjestämään työsi loogisiin osiin - Helpottaa ymmärtämään, mitä muuttui ja milloin - **Muutitko mieltäsi?** Ei hätää! Voit poistaa tiedostoja stagingista näin: + **Muutitko mielesi?** Ei hätää! Voit poistaa tiedostoja vaiheistuksesta näin: ```bash - # Unstage everything + # Poista kaikki lavalta git reset - # Unstage just one file + # Poista vain yksi tiedosto lavalta git reset [file name] ``` Älä huoli – tämä ei poista työtäsi, se vain ottaa tiedostot pois "valmiina tallennettavaksi" -pinosta. -6. **Tallenna työsi pysyvästi** (tee ensimmäinen commitisi!): +6. **Tallenna työsi pysyvästi** (tee ensimmäinen commit!): ```bash git commit -m "first commit" ``` - **🎉 Onnittelut! Teit juuri ensimmäisen commitisi!** + **🎉 Onnittelut! Teit juuri ensimmäisen commitin!** **Tässä tapahtui:** - - Git otti "kuvan" kaikista staged-tiedostoista juuri tällä hetkellä + - Git otti "snapshottin" kaikista vaiheistetuista tiedostoistasi juuri tällä hetkellä - Commit-viestisi "first commit" selittää, mistä tämä tallennuspiste kertoo - - Git antoi tälle kuvalle ainutlaatuisen tunnuksen, jotta voit aina löytää sen myöhemmin + - Git antoi tälle snapshotille ainutlaatuisen tunnuksen, jotta voit aina löytää sen myöhemmin - Olet virallisesti aloittanut projektisi historian seuraamisen! - > 💡 **Tulevat commit-viestit**: Seuraavissa commit-merkinnöissä ole kuvailevampi! Sen sijaan, että kirjoittaisit "päivitetty juttuja", kokeile "Lisätty yhteydenottolomake etusivulle" tai "Korjattu navigointivalikon bugi". Tuleva itsesi kiittää sinua! + > 💡 **Tulevat commit-viestit**: Seuraavissa commit-viesteissä ole kuvailevampi! Sen sijaan että kirjoittaisit "päivitetty juttuja", kokeile "Lisätty yhteydenottolomake etusivulle" tai "Korjattu navigointivalikon virhe". Tuleva itsesi kiittää sinua! 7. **Yhdistä paikallinen projektisi GitHubiin**. Tällä hetkellä projektisi on olemassa vain tietokoneellasi. Yhdistetään se GitHub-repositorioosi, jotta voit jakaa sen maailmalle! - Siirry ensin GitHub-repositoriosi sivulle ja kopioi URL-osoite. Palaa sitten tänne ja kirjoita: + Mene ensin GitHub-repositoriosi sivulle ja kopioi URL-osoite. Sitten palaa tänne ja kirjoita: ```bash git remote add origin https://github.com/username/repository_name.git ``` (Korvaa URL-osoite oikealla repositoriosi URL-osoitteella!) -**Mitä juuri teimme:** -- Loimme yhteyden paikallisen projektisi ja GitHub-reposi välille -- "Origin" on vain lempinimi GitHub-repollesi – vähän kuin lisäisit yhteystiedon puhelimeesi -- Nyt paikallinen Git tietää, minne lähettää koodisi, kun olet valmis jakamaan sen -💡 **Helpompi tapa**: Jos sinulla on GitHub CLI asennettuna, voit tehdä tämän yhdellä komennolla: + **Tässä tapahtui:** +- Loimme yhteyden paikallisen projektisi ja GitHub-repositorion välille +- "Origin" on vain lempinimi GitHub-repositoriollesi – vähän kuin lisäisit yhteystiedon puhelimeesi +- Nyt paikallinen Git tietää, minne lähettää koodisi, kun olet valmis jakamaan sen + +💡 **Helpompi tapa**: Jos sinulla on GitHub CLI asennettuna, voit tehdä tämän yhdellä komennolla: ```bash gh repo create my-repo --public --push --source=. ``` - -8. **Lähetä koodisi GitHubiin** (suuri hetki!): + +8. **Lähetä koodisi GitHubiin** (suuri hetki!): ```bash git push -u origin main ``` + +**🚀 Tässä se on! Lataat koodisi GitHubiin!** -**🚀 Tässä se on! Lataat koodisi GitHubiin!** - -**Mitä tapahtuu:** -- Commitisi matkustavat tietokoneeltasi GitHubiin -- `-u`-lippu luo pysyvän yhteyden, joten tulevat push-komennot ovat helpompia -- "main" on ensisijaisen haarasi nimi (kuten pääkansio) -- Tämän jälkeen voit vain kirjoittaa `git push` tulevia latauksia varten! +**Mitä tapahtuu:** +- Commitisi matkustavat tietokoneeltasi GitHubiin +- `-u` -lippu luo pysyvän yhteyden, joten tulevat push-komennot ovat helpompia +- "main" on ensisijaisen haarasi nimi (kuten pääkansio) +- Tämän jälkeen voit vain kirjoittaa `git push` tulevia latauksia varten! -💡 **Pikahuomio**: Jos haarasi nimi on jotain muuta (kuten "master"), käytä sitä nimeä. Voit tarkistaa sen komennolla `git branch --show-current`. +💡 **Pieni huomio**: Jos haarasi nimi on jotain muuta (kuten "master"), käytä sitä nimeä. Voit tarkistaa sen komennolla `git branch --show-current`. -9. **Uusi päivittäinen koodausrytmi** (tästä tulee koukuttavaa!): +9. **Uusi päivittäinen koodausrytmi** (tästä tulee koukuttavaa!): -Tästä eteenpäin, aina kun teet muutoksia projektiisi, sinulla on tämä yksinkertainen kolmen askeleen tanssi: +Tästä eteenpäin, aina kun teet muutoksia projektiisi, sinulla on tämä yksinkertainen kolmen askeleen tanssi: ```bash git add . git commit -m "describe what you changed" git push ``` + +**Tämä on koodauksen syke:** +- Tee mahtavia muutoksia koodiisi ✨ +- Stageaa ne komennolla `git add` ("Hei Git, huomioi nämä muutokset!") +- Tallenna ne komennolla `git commit` ja kuvailevalla viestillä (tuleva itsesi kiittää sinua!) +- Jaa ne maailmalle komennolla `git push` 🚀 +- Toista ja jatka – tästä tulee yhtä luonnollista kuin hengittäminen! -**Tämä muodostuu koodauksen sykkeeksi:** -- Tee upeita muutoksia koodiisi ✨ -- Stageaa ne `git add`-komennolla ("Hei Git, huomioi nämä muutokset!") -- Tallenna ne `git commit`-komennolla ja kuvailevalla viestillä (tuleva sinä kiittää sinua!) -- Jaa ne maailmalle `git push`-komennolla 🚀 -- Toista – vakavasti, tästä tulee yhtä luonnollista kuin hengittäminen! - -Rakastan tätä työnkulkua, koska se on kuin useiden tallennuspisteiden luomista videopelissä. Teitkö muutoksen, josta pidät? Commitoi se! Haluatko kokeilla jotain riskialtista? Ei hätää – voit aina palata viimeiseen commit-pisteeseen, jos asiat menevät pieleen! +Rakastan tätä työnkulkua, koska se on kuin useiden tallennuspisteiden luominen videopelissä. Teitkö muutoksen, josta pidät? Commitoi se! Haluatko kokeilla jotain riskialtista? Ei hätää – voit aina palata viimeiseen commit-pisteeseen, jos asiat menevät pieleen! -> 💡 **Vinkki**: Voit myös harkita `.gitignore`-tiedoston käyttöönottoa estääksesi tiedostojen, joita et halua seurata, näkymisen GitHubissa – kuten muistiinpanotiedoston, jota säilytät samassa kansiossa mutta jolla ei ole paikkaa julkisessa repossa. Löydät `.gitignore`-tiedostojen malleja osoitteesta [.gitignore templates](https://github.com/github/gitignore) tai voit luoda sellaisen käyttämällä [gitignore.io](https://www.toptal.com/developers/gitignore). +> 💡 **Vinkki**: Saatat haluta ottaa käyttöön `.gitignore`-tiedoston estääksesi tiedostojen, joita et halua seurata, näkymisen GitHubissa – kuten muistiinpanotiedoston, jonka säilytät samassa kansiossa, mutta jolla ei ole paikkaa julkisessa repositoriossa. Löydät `.gitignore`-tiedostojen malleja osoitteesta [.gitignore templates](https://github.com/github/gitignore) tai voit luoda sellaisen käyttämällä [gitignore.io](https://www.toptal.com/developers/gitignore). -### 🧠 **Ensimmäinen repositori-tarkistus: Miltä se tuntui?** +### 🧠 **Ensimmäinen repositorion tarkistus: Miltä se tuntui?** -**Ota hetki juhliaksesi ja pohtiaksesi:** -- Miltä tuntui nähdä koodisi ilmestyvän GitHubiin ensimmäistä kertaa? -- Mikä askel tuntui kaikkein hämmentävimmältä ja mikä yllättävän helpolta? -- Voitko selittää omin sanoin eron `git add`, `git commit` ja `git push` välillä? +**Ota hetki juhliaksesi ja pohtiaksesi:** +- Miltä tuntui nähdä koodisi ilmestyvän GitHubiin ensimmäistä kertaa? +- Mikä askel tuntui kaikkein hämmentävimmältä ja mikä yllättävän helpolta? +- Voitko selittää omin sanoin eron `git add`, `git commit` ja `git push` välillä? ```mermaid stateDiagram-v2 - [*] --> LocalFiles: Create project + [*] --> LocalFiles: Luo projekti LocalFiles --> Staged: git add . Staged --> Committed: git commit Committed --> GitHub: git push - GitHub --> [*]: Success! 🎉 + GitHub --> [*]: Onnistui! 🎉 note right of Staged - Files ready to save + Tiedostot valmiina tallennettavaksi end note note right of Committed - Snapshot created + Tilannekuva luotu end note -``` +``` +> **Muista**: Jopa kokeneet kehittäjät unohtavat joskus tarkat komennot. Tämän työnkulun muuttuminen lihasmuistiksi vaatii harjoittelua – olet tekemässä hienoa työtä! -> **Muista**: Jopa kokeneet kehittäjät unohtavat joskus tarkat komennot. Tämän työnkulun muuttuminen lihasmuistiksi vaatii harjoittelua – olet tekemässä hienoa työtä! +#### Modernit Git-työnkulut -#### Modernit Git-työnkulut +Harkitse näiden modernien käytäntöjen omaksumista: -Harkitse näiden modernien käytäntöjen omaksumista: +- **Conventional Commits**: Käytä standardoitua commit-viestien muotoa, kuten `feat:`, `fix:`, `docs:` jne. Lue lisää osoitteessa [conventionalcommits.org](https://www.conventionalcommits.org/) +- **Atomiset commitit**: Tee jokaisesta commitista yksi looginen muutos +- **Usein commitointi**: Commitoi usein kuvailevilla viesteillä sen sijaan, että tekisit suuria, harvinaisia committeja -- **Conventional Commits**: Käytä standardoitua commit-viestimuotoa, kuten `feat:`, `fix:`, `docs:` jne. Lue lisää osoitteessa [conventionalcommits.org](https://www.conventionalcommits.org/) -- **Atomiset commitit**: Tee jokaisesta commitista yksi looginen muutos -- **Usein commitointi**: Commitoi usein kuvailevilla viesteillä sen sijaan, että tekisit suuria, harvinaisia committeja +#### Commit-viestit -#### Commit-viestit +Hyvä Git commit -aiherivi täydentää seuraavan lauseen: +Jos tämä commit toteutetaan, se -Hyvä Git commit -aiherivi täydentää seuraavan lauseen: -Jos tämä commit toteutetaan, se +Käytä aiherivissä käskymuotoa ja preesenssiä: "muuta" ei "muutettu" eikä "muuttaa". +Kuten aiherivissä, myös rungossa (valinnainen) käytä käskymuotoa ja preesenssiä. Rungossa tulisi olla muutoksen motivaatio ja vertailu aiempaan käyttäytymiseen. Selität "miksi", et "miten". -Käytä aiherivissä imperatiivista preesensmuotoa: "muuta" eikä "muutettu" tai "muuttaa". Kuten aiherivissä, myös (valinnaisessa) tekstiosassa käytä imperatiivista preesensmuotoa. Tekstiosassa tulisi sisällyttää muutoksen motivaatio ja verrata sitä aiempaan käyttäytymiseen. Selität "miksi", et "miten". +✅ Käytä muutama minuutti surffaillaksesi GitHubissa. Löydätkö todella hyvän commit-viestin? Löydätkö todella minimaalisen? Mitä tietoa mielestäsi on tärkeintä ja hyödyllisintä välittää commit-viestissä? -✅ Käytä muutama minuutti surffaillaksesi GitHubissa. Voitko löytää todella hyvän commit-viestin? Entä todella minimaalisen? Mitä tietoa mielestäsi on tärkeintä ja hyödyllisintä välittää commit-viestissä? +## Työskentely muiden kanssa (Hauska osuus!) -## Työskentely muiden kanssa (Hauska osuus!) +Pidä hatustasi kiinni, sillä TÄMÄ on se osa, jossa GitHub muuttuu täysin maagiseksi! 🪄 Olet hallinnut oman koodisi hallinnan, mutta nyt sukellamme ehdottomaan suosikkiosaani – yhteistyöhön mahtavien ihmisten kanssa ympäri maailmaa. -Pidä hatustasi kiinni, sillä TÄMÄ on se osa, jossa GitHub muuttuu täysin maagiseksi! 🪄 Olet hallinnut oman koodisi hallinnan, mutta nyt sukellamme suosikkiosaani – yhteistyöhön mahtavien ihmisten kanssa ympäri maailmaa. +Kuvittele tämä: heräät huomenna ja huomaat, että joku Tokiossa paransi koodiasi nukkuessasi. Sitten joku Berliinissä korjaa bugin, jonka kanssa olet ollut jumissa. Iltapäivällä kehittäjä São Paulossa lisää ominaisuuden, jota et edes ajatellut. Tämä ei ole tieteiskirjallisuutta – tämä on vain tiistai GitHub-universumissa! -Kuvittele tämä: heräät huomenna ja huomaat, että joku Tokiossa paransi koodiasi nukkuessasi. Sitten joku Berliinissä korjaa bugin, jonka kanssa olet kamppaillut. Iltapäivällä kehittäjä São Paulossa lisää ominaisuuden, jota et edes tullut ajatelleeksi. Tämä ei ole tieteiskirjallisuutta – tämä on vain tiistai GitHub-universumissa! +Mikä todella innostaa minua, on se, että yhteistyötaidot, joita olet oppimassa? Nämä ovat TÄSMÄLLEEN samoja työnkulkuja, joita tiimit Googlessa, Microsoftissa ja suosikkistartupeissasi käyttävät joka päivä. Et opi vain siistiä työkalua – opit salakielen, joka saa koko ohjelmistomaailman toimimaan yhdessä. -Mikä saa minut todella innostumaan, on se, että yhteistyötaidot, joita olet oppimassa? Nämä ovat TÄSMÄLLEEN samoja työnkulkuja, joita Google, Microsoft ja suosikkistartupisi tiimit käyttävät joka päivä. Et vain opi siistiä työkalua – opit salakielen, joka saa koko ohjelmistomaailman toimimaan yhdessä. +Vakavasti, kun koet ensimmäisen pull requestin yhdistämisen tuoman innostuksen, ymmärrät, miksi kehittäjät ovat niin intohimoisia avoimen lähdekoodin suhteen. Se on kuin olla osa maailman suurinta, luovinta tiimiprojektia! -Vakavasti, kun koet ensimmäisen pull requestisi hyväksymisen tuoman huuman, ymmärrät, miksi kehittäjät ovat niin intohimoisia avoimen lähdekoodin suhteen. Se on kuin olisi osa maailman suurinta, luovinta tiimiprojektia! +> Katso video +> +> [![Git ja GitHub perusteet video](https://img.youtube.com/vi/bFCM-PC3cu8/0.jpg)](https://www.youtube.com/watch?v=bFCM-PC3cu8) -> Katso video -> -> [![Gitin ja GitHubin perusteet -video](https://img.youtube.com/vi/bFCM-PC3cu8/0.jpg)](https://www.youtube.com/watch?v=bFCM-PC3cu8) - -Suurin syy siihen, miksi asioita laitetaan GitHubiin, oli tehdä yhteistyö muiden kehittäjien kanssa mahdolliseksi. +GitHubiin asioiden laittamisen pääsyy oli tehdä yhteistyö muiden kehittäjien kanssa mahdolliseksi. ```mermaid flowchart LR - A[🔍 Find Project] --> B[🍴 Fork Repository] - B --> C[📥 Clone to Local] - C --> D[🌿 Create Branch] - D --> E[✏️ Make Changes] - E --> F[💾 Commit Changes] - F --> G[📤 Push Branch] - G --> H[🔄 Create Pull Request] - H --> I{Maintainer Review} - I -->|✅ Approved| J[🎉 Merge!] - I -->|❓ Changes Requested| K[📝 Make Updates] + A[🔍 Etsi projekti] --> B[🍴 Haarauta arkisto] + B --> C[📥 Kloonaa paikallisesti] + C --> D[🌿 Luo haara] + D --> E[✏️ Tee muutoksia] + E --> F[💾 Tee commit] + F --> G[📤 Työnnä haara] + G --> H[🔄 Luo pull request] + H --> I{Ylläpitäjän tarkistus} + I -->|✅ Hyväksytty| J[🎉 Yhdistä!] + I -->|❓ Muutoksia pyydetty| K[📝 Tee päivityksiä] K --> F - J --> L[🧹 Clean Up Branches] + J --> L[🧹 Siivoa haarat] style A fill:#e3f2fd style J fill:#e8f5e8 style L fill:#fff3e0 -``` - -Repositoriossasi siirry kohtaan `Insights > Community` nähdäksesi, miten projektisi vertautuu suositeltuihin yhteisön standardeihin. +``` +Repositoriossasi siirry kohtaan `Insights > Community` nähdäksesi, miten projektisi vertautuu suositeltuihin yhteisön standardeihin. -Haluatko tehdä repositoriosi ammattimaiseksi ja kutsuvaksi? Siirry repositorioon ja klikkaa `Insights > Community`. Tämä hieno ominaisuus näyttää, miten projektisi vertautuu siihen, mitä GitHub-yhteisö pitää "hyvinä repositori-käytäntöinä." +Haluatko tehdä repositoriostasi ammattimaisen ja kutsuvan? Siirry repositorioosi ja klikkaa kohtaa `Insights > Community`. Tämä hieno ominaisuus näyttää, miten projektisi vertautuu siihen, mitä GitHub-yhteisö pitää "hyvinä repositoriokäytäntöinä". -> 🎯 **Projektisi loistamaan saaminen**: Hyvin järjestetty repositorio, jossa on hyvä dokumentaatio, on kuin siisti ja kutsuva myymälä. Se kertoo ihmisille, että välität työstäsi ja saa muut haluamaan osallistua! +> 🎯 **Projektisi loistamaan saaminen**: Hyvin järjestetty repositorio, jossa on hyvä dokumentaatio, on kuin siisti, kutsuva myymälä. Se kertoo ihmisille, että välität työstäsi ja saa muut haluamaan osallistua! -**Mikä tekee repositoriosta mahtavan:** +**Tässä on, mikä tekee repositoriosta mahtavan:** -| Mitä lisätä | Miksi se on tärkeää | Mitä se tekee sinulle | -|-------------|-------------------|---------------------| -| **Kuvaus** | Ensivaikutelma ratkaisee! | Ihmiset tietävät heti, mitä projektisi tekee | -| **README** | Projektisi etusivu | Kuten ystävällinen opas uusille vierailijoille | -| **Contributing Guidelines** | Näyttää, että otat apua vastaan | Ihmiset tietävät tarkalleen, miten he voivat auttaa sinua | -| **Code of Conduct** | Luo ystävällisen tilan | Kaikki tuntevat olonsa tervetulleeksi osallistua | -| **Lisenssi** | Oikeudellinen selkeys | Muut tietävät, miten he voivat käyttää koodiasi | -| **Security Policy** | Näyttää, että olet vastuullinen | Osoittaa ammattikäytäntöjä | +| Mitä lisätä | Miksi se on tärkeää | Mitä se tekee sinulle | +|-------------|-------------------|---------------------| +| **Kuvaus** | Ensivaikutelma ratkaisee! | Ihmiset tietävät heti, mitä projektisi tekee | +| **README** | Projektisi etusivu | Kuten ystävällinen opas uusille vierailijoille | +| **Contributing Guidelines** | Näyttää, että otat apua vastaan | Ihmiset tietävät tarkalleen, miten he voivat auttaa sinua | +| **Code of Conduct** | Luo ystävällisen tilan | Kaikki tuntevat olonsa tervetulleeksi osallistua | +| **Lisenssi** | Oikeudellinen selkeys | Muut tietävät, miten he voivat käyttää koodiasi | +| **Security Policy** | Näyttää, että olet vastuullinen | Osoittaa ammattikäytäntöjä | -> 💡 **Pro-vinkki**: GitHub tarjoaa malleja kaikille näille tiedostoille. Kun luot uuden repositorion, valitse ruudut, jotka automaattisesti luovat nämä tiedostot. +> 💡 **Pro Vinkki**: GitHub tarjoaa malleja kaikille näille tiedostoille. Kun luot uuden repositorion, valitse ruudut, jotta nämä tiedostot luodaan automaattisesti. -**Modernit GitHub-ominaisuudet, joita kannattaa tutkia:** +**Modernit GitHub-ominaisuudet tutkittavaksi:** -🤖 **Automaatio & CI/CD:** -- **GitHub Actions** automatisoituun testaukseen ja käyttöönottoon -- **Dependabot** automaattisiin riippuvuuspäivityksiin +🤖 **Automaatio & CI/CD:** +- **GitHub Actions** automatisoituun testaukseen ja käyttöönottoon +- **Dependabot** automaattisiin riippuvuuspäivityksiin -💬 **Yhteisö & projektinhallinta:** -- **GitHub Discussions** yhteisökeskusteluihin, jotka menevät pidemmälle kuin ongelmat -- **GitHub Projects** kanban-tyyliseen projektinhallintaan -- **Haarojen suojaussäännöt** koodin laadun varmistamiseksi +💬 **Yhteisö & projektinhallinta:** +- **GitHub Discussions** yhteisökeskusteluihin, jotka menevät ongelmien ulkopuolelle +- **GitHub Projects** kanban-tyyliseen projektinhallintaan +- **Haarasuojaukset** koodin laadun standardien varmistamiseksi -Kaikki nämä resurssit hyödyttävät uusien tiimin jäsenten perehdyttämistä. Ja nämä ovat tyypillisesti asioita, joita uudet osallistujat tarkastelevat ennen kuin edes katsovat koodiasi, selvittääkseen, onko projektisi oikea paikka heidän ajankäytölleen. +Kaikki nämä resurssit hyödyttävät uusien tiimin jäsenten perehdyttämistä. Ja nämä ovat tyypillisesti asioita, joita uudet avustajat tarkastelevat ennen kuin edes katsovat koodiasi, selvittääkseen, onko projektisi oikea paikka heidän ajankäytölleen. -✅ README-tiedostot, vaikka niiden valmistelu vie aikaa, jäävät usein kiireisten ylläpitäjien huomiotta. Voitko löytää esimerkin erityisen kuvailevasta README:stä? Huomaa: on olemassa [työkaluja hyvien README-tiedostojen luomiseen](https://www.makeareadme.com/), joita saatat haluta kokeilla. +✅ README-tiedostot, vaikka niiden valmistelu vie aikaa, jäävät usein kiireisten ylläpitäjien huomiotta. Löydätkö esimerkin erityisen kuvailevasta README:stä? Huomaa: on olemassa [työkaluja hyvien README-tiedostojen luomiseen](https://www.makeareadme.com/), joita saatat haluta kokeilla. -### Tehtävä: Yhdistä koodia +### Tehtävä: Yhdistä koodia -Contributing-dokumentit auttavat ihmisiä osallistumaan projektiin. Ne selittävät, millaisia panoksia etsit ja miten prosessi toimii. Osallistujien täytyy käydä läpi sarja vaiheita voidakseen osallistua repositorioon GitHubissa: +Contributing-dokumentit auttavat ihmisiä osallistumaan projektiin. Ne selittävät, millaisia kontribuutioita etsit ja miten prosessi toimii. Avustajien täytyy käydä läpi sarja vaiheita voidakseen osallistua repositorioosi GitHubissa: -1. **Repositorion haarauttaminen**. Haluat todennäköisesti, että ihmiset _forkkaavat_ projektisi. Forkkaaminen tarkoittaa repositorion kopion luomista heidän GitHub-profiiliinsa. -1. **Kloonaus**. Tämän jälkeen he kloonaavat projektin paikalliselle koneelleen. -1. **Haaran luominen**. Haluat pyytää heitä luomaan _haaran_ työlleen. -1. **Keskittyminen yhteen muutokseen**. Pyydä osallistujia keskittymään panoksissaan yhteen asiaan kerrallaan – näin mahdollisuudet siihen, että voit _yhdistää_ heidän työnsä, ovat suuremmat. Kuvittele, että he kirjoittavat bugin korjauksen, lisäävät uuden ominaisuuden ja päivittävät useita testejä – entä jos haluat tai voit toteuttaa vain 2 kolmesta tai 1 kolmesta muutoksesta? +1. **Repositorion haarauttaminen**. Haluat todennäköisesti ihmisten _forkkaavan_ projektisi. Forkkaaminen tarkoittaa repositoriosi kopion luomista heidän GitHub-profiiliinsa. +1. **Kloonaus**. Sieltä he kloonaavat projektin paikalliselle koneelleen. +1. **Haaran luominen**. Haluat pyytää heitä luomaan _haaran_ työlleen. +1. **Keskittyminen yhteen alueeseen**. Pyydä avustajia keskittymään kontribuutioissaan yhteen asiaan kerrallaan – näin mahdollisuudet, että voit _yhdistää_ heidän työnsä, ovat suuremmat. Kuvittele, että he kirjoittavat bugin korjauksen, lisäävät uuden ominaisuuden ja päivittävät useita testejä – entä jos haluat tai voit toteuttaa vain 2 kolmesta tai 1 kolmesta muutoksesta? -✅ Kuvittele tilanne, jossa haarat ovat erityisen kriittisiä hyvän koodin kirjoittamisessa ja julkaisemisessa. Mitä käyttötapauksia voit keksiä? +✅ Kuvittele tilanne, jossa haarat ovat erityisen kriittisiä hyvän koodin kirjoittamisessa ja julkaisemisessa. Mitä käyttötapauksia voit keksiä? -> Huomaa, ole muutos, jonka haluat nähdä maailmassa, ja luo haaroja myös omalle työllesi. Kaikki commitit, jotka teet, tehdään haaralle, jolle olet tällä hetkellä "checkout"-tilassa. Käytä `git status` nähdäksesi, mikä haara se on. +> Huomaa, ole muutos, jonka haluat nähdä maailmassa, ja luo haaroja myös omalle työllesi. Kaikki commitit, jotka teet, tehdään haarassa, johon olet tällä hetkellä "kirjautunut". Käytä `git status` nähdäksesi, mikä haara se on. -Käydään läpi osallistujan työnkulku. Oletetaan, että osallistuja on jo _forkannut_ ja _kloonannut_ repositorion, joten heillä on Git-repositorio valmiina työstettäväksi paikallisella koneellaan: +Käydään läpi avustajan työnkulku. Oletetaan, että avustaja on jo _forkannut_ ja _kloonannut_ repositorion, joten heillä on Git-repositorio valmiina työstettäväksi paikallisella koneellaan: -1. **Haaran luominen**. Käytä komentoa `git branch` luodaksesi haaran, joka sisältää muutokset, joita he aikovat kontribuoida: +1. **Haaran luominen**. Käytä komentoa `git branch` luodaksesi haaran, joka sisältää muutokset, joita he aikovat kontribuoida: ```bash git branch [branch-name] ``` - - > 💡 **Moderni lähestymistapa**: Voit myös luoda ja siirtyä uuteen haaraan yhdellä komennolla: + + > 💡 **Moderni lähestymistapa**: Voit myös luoda ja vaihtaa uuteen haaraan yhdellä komennolla: ```bash git switch -c [branch-name] ``` - -1. **Siirtyminen työhaaraan**. Siirry määritettyyn haaraan ja päivitä työhakemisto komennolla `git switch`: + +1. **Vaihto työhaaraan**. Vaihda määritettyyn haaraan ja päivitä työhakemisto komennolla `git switch`: ```bash git switch [branch-name] ``` + + > 💡 **Moderni huomio**: `git switch` on moderni korvaaja `git checkout` -komennolle haarojen vaihtamisessa. Se on selkeämpi ja turvallisempi aloittelijoille. - > 💡 **Moderni huomio**: `git switch` on moderni korvaaja `git checkout`-komennolle haarojen vaihtamisessa. Se on selkeämpi ja turvallisempi aloittelijoille. - -1. **Työskentely**. Tässä vaiheessa haluat lisätä muutoksesi. Älä unohda kertoa Gitille niistä seuraavilla komennoilla: +1. **Työskentely**. Tässä vaiheessa haluat lisätä muutoksesi. Älä unohda kertoa Gitille siitä seuraavilla komennoilla: ```bash git add . git commit -m "my changes" ``` + + > ⚠️ **Commit-viestin laatu**: Varmista, että annat commitillesi hyvän nimen, sekä itsesi että repositorion ylläpitäjän vuoksi, jota autat. Ole tarkka siitä, mitä muutit! - > ⚠️ **Commit-viestin laatu**: Varmista, että annat commitillesi hyvän nimen, sekä itsesi että repositorion ylläpitäjän vuoksi. Ole tarkka siitä, mitä muutit! - -1. **Yhdistä työsi `main`-haaraan**. Jossain vaiheessa olet valmis ja haluat yhdistää työsi `main`-haaraan. `main`-haara on saattanut muuttua sillä välin, joten varmista, että päivität sen ensin uusimpaan versioon seuraavilla komennoilla: +1. **Yhdistä työsi `main`-haaraan**. Jossain vaiheessa olet valmis työskentelemään ja haluat yhdistää työsi `main`-haaraan. `main`-haara on saattanut muuttua sillä välin, joten varmista, että päivität sen ensin uusimpaan seuraavilla komennoilla: ```bash git switch main git pull ``` - - Tässä vaiheessa haluat varmistaa, että mahdolliset _konfliktit_, tilanteet, joissa Git ei voi helposti _yhdistää_ muutoksia, tapahtuvat työhaarassasi. Siksi suorita seuraavat komennot: + + Tässä vaiheessa haluat varmistaa, että mahdolliset _konfliktit_, tilanteet, joissa Git ei voi helposti _yhdistää_ muutoksia, tapahtuvat työhaarassasi. Siksi suorita seuraavat komennot: ```bash git switch [branch_name] git merge main ``` + + Komento `git merge main` tuo kaikki muutokset `main`-haarasta haaraasi. Toivottavasti voit vain jatkaa. Jos et, VS Code kertoo sinulle, missä Git on _hämmentynyt_, ja sinun tarvitsee vain muokata kyseisiä tiedostoja sanoaksesi, mikä sisältö on tarkin. - Komento `git merge main` tuo kaikki muutokset `main`-haarasta haaraasi. Toivottavasti voit vain jatkaa. Jos et, VS Code kertoo, missä Git on _epävarma_, ja sinun tarvitsee vain muokata kyseisiä tiedostoja määrittääksesi, mikä sisältö on tarkin. - - 💡 **Moderni vaihtoehto**: Harkitse `git rebase`-komennon käyttöä siistimmän historian saamiseksi: + 💡 **Moderni vaihtoehto**: Harkitse `git rebase`-komennon käyttöä siistimmän historian saamiseksi: ```bash git rebase main ``` - Tämä toistaa commitisi uusimman `main`-haaran päälle, luoden lineaarisen historian. + + Tämä toistaa commitisi uusimman `main`-haaran päälle, luoden lineaarisen historian. -1. **Lähetä työsi GitHubiin**. Työsi lähettäminen GitHubiin tarkoittaa kahta asiaa. Haarasi push-komentoa repositorioon ja sitten PR:n, Pull Requestin, avaamista. +1. **Lähetä työsi GitHubiin**. Työsi lähettäminen GitHubiin tarkoittaa kahta asiaa. Haarasi push-komentoa repositorioon ja sitten PR:n, Pull Requestin, avaamista. ```bash git push --set-upstream origin [branch-name] ``` + + Yllä oleva komento luo haaran forkatussa repositoriossasi. - Yllä oleva komento luo haaran forkattuun repositorioon. - -### 🤝 **Yhteistyötaitojen tarkistus: Valmis työskentelemään muiden kanssa?** +### 🤝 **Yhteistyötaitojen tarkistus: Valmis työskentelemään muiden kanssa?** -**Katsotaanpa, miltä sinusta tuntuu yhteistyöstä:** -- Tuntuuko ajatus forkkaamisesta ja pull requesteista nyt järkevältä? -- Mikä on yksi asia haaroihin liittyen, jota haluat harjoitella enemmän? -- Kuinka mukavalta sinusta tuntuu ajatus osallistua jonkun toisen projektiin? +**Katsotaan, miltä sinusta tuntuu yhteistyöstä:** +- Tuntuuko forkkaamisen ja pull requestien idea nyt järkevältä? +- Mikä on yksi asia haarojen kanssa työskentelystä, jota haluat harjoitella enemmän? +- Kuinka mukavalta sinusta tuntuu osallistua jonkun toisen projektiin? ```mermaid mindmap - root((Git Collaboration)) - Branching - Feature branches - Bug fix branches - Experimental work - Pull Requests - Code review - Discussion - Testing - Best Practices - Clear commit messages - Small focused changes - Good documentation -``` - -> **Itseluottamusbuusti**: Jokainen ihailemasi kehittäjä on joskus ollut hermostunut ensimmäisestä pull requestistaan. GitHub-yhteisö on uskomattoman vastaanottavainen uusille tulokkaille! - -1. **Avaa PR**. Seuraavaksi haluat avata PR:n. Teet sen siirtymällä forkattuun repositorioon GitHubissa. Näet GitHubissa merkinnän, jossa kysytään, haluatko luoda uuden PR:n. Klikkaat sitä ja sinut ohjataan käyttöliittymään, jossa voit muuttaa commit-viestin otsikkoa, antaa sille sopivamman kuvauksen. Nyt forkkaamasi repositorion ylläpitäjä näkee tämän PR:n ja _sormet ristissä_ arvostaa ja _yhdistää_ PR:si. Olet nyt kontribuoija, jee :) - - 💡 **Moderni vinkki**: Voit myös luoda PR:itä käyttämällä GitHub CLI:tä: + root((Git-yhteistyö)) + Haarautuminen + Ominaisuushaarat + Virheenkorjaushaarat + Kokeellinen työ + Pull-pyynnöt + Koodin tarkistus + Keskustelu + Testaus + Parhaat käytännöt + Selkeät commit-viestit + Pienet keskittyneet muutokset + Hyvä dokumentaatio +``` +> **Itseluottamuksen vahvistaja**: Jokainen kehittäjä, jota ihailet, oli kerran hermostunut ensimmäisestä pull requestistaan. GitHub-yhteisö on uskomattoman vastaanottavainen uusille tulokkaille! + +1. **Avaa PR**. Seuraavaksi haluat avata PR:n. Teet sen siirtymällä forkattuun repositorioon GitHubissa. Näet GitHubissa merkinnän, jossa kysytään, haluatko luoda uuden PR:n, klikkaat sitä ja sinut ohjataan käyttöliittymään, jossa voit muuttaa commit-viestin otsikkoa, antaa sille sopivamman kuvauksen. Nyt forkkaamasi repositorion ylläpitäjä näkee tämän PR:n ja _sormet ristissä_ he arvostavat ja _yhdistävät_ PR:si. Olet nyt avustaja, jee :) + + 💡 **Moderni vinkki**: Voit myös luoda PR:n käyttämällä GitHub CLI:ta: ```bash gh pr create --title "Your PR title" --body "Description of changes" ``` - - 🔧 **Parhaat käytännöt PR:ille**: - - Linkitä liittyviin ongelmiin käyttämällä avainsanoja, kuten "Fixes #123" - - Lisää kuvakaappauksia käyttöliittymämuutoksista - - Pyydä tiettyjä arvioijia - - Käytä luonnos-PR:itä keskeneräiselle työlle - - Varmista, että kaikki CI-tarkistukset läpäistään ennen arviointipyynnön lähettämistä -1. **Siivous**. On hyvä tapa _siivota_ onnistuneen PR:n yhdistämisen jälkeen. Haluat siivota sekä paikallisen haarasi että GitHubiin työntämäsi haaran. Poistetaan ensin paikallinen haara seuraavalla komennolla: + + 🔧 **Parhaat käytännöt PR:ille**: + - Linkitä liittyviin ongelmiin avainsanoilla kuten "Fixes #123" + - Lisää kuvakaappauksia käyttöliittymämuutoksista + - Pyydä tiettyjä tarkastajia + - Käytä luonnos-PR:itä keskeneräiselle työlle + - Varmista, että kaikki CI-tarkistukset läpäisevät ennen tarkastuspyynnön lähettämistä +1. **Siivous**. On hyvä tapa _siivota_ onnistuneen PR:n yhdistämisen jälkeen. Haluat siivota sekä paikallisen haarasi että haaran, jonka työnsit GitHubiin. Poistetaan ensin paikallinen haara seuraavalla komennolla: ```bash git branch -d [branch-name] ``` - - Varmista, että siirryt seuraavaksi GitHub-sivulle haarautuneen repositorion kohdalle ja poistat juuri sinne työntämäsi etähaaran. + + Varmista, että menet seuraavaksi GitHub-sivulle haarautuneen repositorion kohdalle ja poistat etähaaran, jonka juuri työnsit sinne. `Pull request` vaikuttaa hieman hassulta termiltä, koska oikeasti haluat työntää muutoksesi projektiin. Mutta ylläpitäjän (projektin omistajan) tai ydintiimin täytyy harkita muutoksiasi ennen kuin ne yhdistetään projektin "päähaaraan", joten oikeastaan pyydät ylläpitäjältä päätöstä muutoksesta. -Pull request on paikka, jossa verrataan ja keskustellaan haaran tuomista eroista arvostelujen, kommenttien, integroituja testien ja muiden avulla. Hyvä pull request noudattaa suunnilleen samoja sääntöjä kuin commit-viesti. Voit lisätä viittauksen ongelmaan ongelmaseurannassa, esimerkiksi kun työsi korjaa jonkin ongelman. Tämä tehdään käyttämällä `#`-merkkiä ja ongelman numeroa. Esimerkiksi `#97`. +Pull request on paikka, jossa voit verrata ja keskustella haaran tuomista eroista arvostelujen, kommenttien, integroitujen testien ja muiden avulla. Hyvä pull request noudattaa suunnilleen samoja sääntöjä kuin commit-viesti. Voit lisätä viittauksen ongelmaan ongelmaseurannassa, esimerkiksi kun työsi korjaa ongelman. Tämä tehdään käyttämällä `#`-merkkiä ja ongelman numeroa, esimerkiksi `#97`. 🤞Sormet ristissä, että kaikki tarkistukset menevät läpi ja projektin omistaja(t) yhdistävät muutoksesi projektiin🤞 @@ -574,205 +572,205 @@ Päivitä nykyinen paikallinen työhaara kaikilla uusilla commit-viesteillä vas ## Osallistuminen avoimeen lähdekoodiin (Mahdollisuutesi vaikuttaa!) -Oletko valmis johonkin, joka tulee räjäyttämään mielesi? 🤯 Puhutaan osallistumisesta avoimen lähdekoodin projekteihin – ja pelkkä ajatus tästä saa minut innostumaan! +Oletko valmis johonkin, joka tulee räjäyttämään mielesi? 🤯 Puhutaan osallistumisesta avoimen lähdekoodin projekteihin – ja saan kylmiä väreitä pelkästä ajatuksesta jakaa tämä kanssasi! -Tämä on tilaisuutesi olla osa jotain todella poikkeuksellista. Kuvittele parantavasi työkaluja, joita miljoonat kehittäjät käyttävät päivittäin, tai korjaavasi bugin sovelluksessa, jota ystäväsi rakastavat. Tämä ei ole vain unelma – juuri tätä avoimen lähdekoodin osallistuminen tarkoittaa! +Tämä on tilaisuutesi olla osa jotain todella poikkeuksellista. Kuvittele parantavasi työkaluja, joita miljoonat kehittäjät käyttävät päivittäin, tai korjaavasi virheen sovelluksessa, jota ystäväsi rakastavat. Tämä ei ole vain unelma – juuri tätä avoimen lähdekoodin osallistuminen tarkoittaa! -Tässä on se, mikä saa minut aina innostumaan: jokainen työkalu, jota olet oppinut käyttämään – koodieditorisi, kehykset, joita tutkimme, jopa selain, jossa luet tätä – sai alkunsa jostain, joka oli aivan kuten sinä ja teki ensimmäisen kontribuutionsa. Se loistava kehittäjä, joka rakensi suosikkisi VS Code -laajennuksen? Hänkin oli kerran aloittelija, joka klikkasi "create pull request" vapisevin käsin, aivan kuten sinä olet tekemässä. +Tässä on se, mikä saa minut innostumaan joka kerta kun ajattelen sitä: jokainen työkalu, jota olet oppinut käyttämään – koodieditorisi, kehykset, joita tutkimme, jopa selain, jossa luet tätä – alkoi jonkun kaltaisesi ensimmäisestä osallistumisesta. Se loistava kehittäjä, joka rakensi suosikkisi VS Code -laajennuksen? Hän oli kerran aloittelija, joka klikkasi "create pull request" vapisevin käsin, aivan kuten sinä olet tekemässä. -Ja tässä on kaunein osa: avoimen lähdekoodin yhteisö on kuin internetin suurin ryhmähalailu. Useimmat projektit etsivät aktiivisesti uusia tulokkaita ja merkitsevät ongelmia "good first issue" -tunnisteella juuri sinun kaltaisillesi! Ylläpitäjät todella innostuvat nähdessään uusia osallistujia, koska he muistavat omat ensimmäiset askeleensa. +Ja tässä on kaunein osa: avoimen lähdekoodin yhteisö on kuin internetin suurin ryhmähalauksien paikka. Useimmat projektit etsivät aktiivisesti uusia tulokkaita ja merkitsevät ongelmia "good first issue" erityisesti kaltaisillesi ihmisille! Ylläpitäjät todella innostuvat nähdessään uusia osallistujia, koska he muistavat omat ensimmäiset askeleensa. ```mermaid flowchart TD - A[🔍 Explore GitHub] --> B[🏷️ Find "good first issue"] - B --> C[📖 Read Contributing Guidelines] - C --> D[🍴 Fork Repository] - D --> E[💻 Set Up Local Environment] - E --> F[🌿 Create Feature Branch] - F --> G[✨ Make Your Contribution] - G --> H[🧪 Test Your Changes] - H --> I[📝 Write Clear Commit] - I --> J[📤 Push & Create PR] - J --> K[💬 Engage with Feedback] - K --> L[🎉 Merged! You're a Contributor!] - L --> M[🌟 Find Next Issue] + A[🔍 Tutki GitHubia] --> B[🏷️ Löydä "good first issue"] + B --> C[📖 Lue Ohjeet Osallistumiseen] + C --> D[🍴 Haarauta Repositorio] + D --> E[💻 Aseta Paikallinen Ympäristö] + E --> F[🌿 Luo Ominaisuushaaro] + F --> G[✨ Tee Panoksesi] + G --> H[🧪 Testaa Muutoksesi] + H --> I[📝 Kirjoita Selkeä Commit] + I --> J[📤 Työnnä & Luo PR] + J --> K[💬 Osallistu Palautteeseen] + K --> L[🎉 Yhdistetty! Olet Avustaja!] + L --> M[🌟 Etsi Seuraava Tehtävä] style A fill:#e1f5fe style L fill:#c8e6c9 style M fill:#fff59d ``` - Et vain opi koodaamaan täällä – valmistaudut liittymään maailmanlaajuiseen rakentajien perheeseen, joka herää joka päivä ajatellen "Kuinka voimme tehdä digitaalisesta maailmasta hieman paremman?" Tervetuloa joukkoon! 🌟 -Etsi ensin GitHubista sinua kiinnostava repositorio (tai **repo**), johon haluaisit tehdä muutoksen. Haluat kopioida sen sisällön koneellesi. +Etsi ensin GitHubista repositorio (tai **repo**), joka kiinnostaa sinua ja johon haluaisit tehdä muutoksen. Haluat kopioida sen sisällön koneellesi. -✅ Hyvä tapa löytää 'aloittelijaystävällisiä' repoja on [etsiä tunnisteella 'good-first-issue'](https://github.blog/2020-01-22-browse-good-first-issues-to-start-contributing-to-open-source/). +✅ Hyvä tapa löytää 'aloittelijaystävällisiä' repoja on [etsiä tagilla 'good-first-issue'](https://github.blog/2020-01-22-browse-good-first-issues-to-start-contributing-to-open-source/). ![Kopioi repo paikallisesti](../../../../translated_images/clone_repo.5085c48d666ead57664f050d806e325d7f883be6838c821e08bc823ab7c66665.fi.png) -Koodin kopioimiseen on useita tapoja. Yksi tapa on "klonata" repositorion sisältö HTTPS:n, SSH:n tai GitHub CLI:n (Command Line Interface) avulla. +Koodin kopioimiseen on useita tapoja. Yksi tapa on "klonata" repositorion sisältö HTTPS:n, SSH:n tai GitHub CLI:n (komentoriviliittymän) avulla. Avaa terminaali ja klonaa repositorio näin: ```bash -# Using HTTPS +# Käytetään HTTPS:ää git clone https://github.com/ProjectURL -# Using SSH (requires SSH key setup) +# Käytetään SSH:ta (vaatii SSH-avaimen asennuksen) git clone git@github.com:username/repository.git -# Using GitHub CLI +# Käytetään GitHub CLI:tä gh repo clone username/repository ``` - -Työskentelyä varten siirry oikeaan kansioon: + +Työskentelyä varten siirry oikeaan kansioon: `cd ProjectURL` -Voit myös avata koko projektin käyttämällä: -- **[GitHub Codespaces](https://github.com/features/codespaces)** - GitHubin pilvipohjainen kehitysympäristö VS Codella selaimessa +Voit myös avata koko projektin käyttämällä: +- **[GitHub Codespaces](https://github.com/features/codespaces)** - GitHubin pilvipohjainen kehitysympäristö VS Codella selaimessa - **[GitHub Desktop](https://desktop.github.com/)** - GUI-sovellus Git-toimintoihin -- **[GitHub.dev](https://github.dev)** - Paina `.`-näppäintä missä tahansa GitHub-repossa avataksesi VS Coden selaimessa -- **VS Code** GitHub Pull Requests -laajennuksella +- **[GitHub.dev](https://github.dev)** - Paina `.`-näppäintä missä tahansa GitHub-repossa avataksesi VS Coden selaimessa +- **VS Code** GitHub Pull Requests -laajennuksella -Voit myös ladata koodin zip-tiedostona. +Lopuksi voit ladata koodin zip-kansiossa. ### Muutamia mielenkiintoisia asioita GitHubista -Voit tähdittää, seurata ja/tai "forkata" mitä tahansa julkista repositoriota GitHubissa. Löydät tähdittämäsi repositoriot oikean yläkulman pudotusvalikosta. Se on kuin kirjanmerkit, mutta koodille. +Voit tähdittää, seurata ja/tai "forkata" mitä tahansa julkista repositoria GitHubissa. Löydät tähdittämäsi repositoriot oikean yläkulman pudotusvalikosta. Se on kuin kirjanmerkit, mutta koodille. -Projekteilla on ongelmaseuranta, yleensä GitHubissa "Issues"-välilehdellä, ellei toisin mainita, jossa ihmiset keskustelevat projektiin liittyvistä ongelmista. Ja Pull Requests -välilehdellä ihmiset keskustelevat ja arvioivat muutoksia, jotka ovat työn alla. +Projekteilla on ongelmaseuranta, yleensä GitHubissa "Issues"-välilehdellä, ellei toisin mainita, jossa ihmiset keskustelevat projektin ongelmista. Ja Pull Requests -välilehdellä ihmiset keskustelevat ja arvioivat muutoksia, jotka ovat työn alla. -Projekteilla voi myös olla keskusteluja foorumeilla, sähköpostilistoilla tai chat-kanavilla, kuten Slack, Discord tai IRC. +Projekteilla voi myös olla keskusteluja foorumeilla, sähköpostilistoilla tai chat-kanavilla kuten Slack, Discord tai IRC. -🔧 **Modernit GitHub-ominaisuudet**: -- **GitHub Discussions** - Sisäänrakennettu foorumi yhteisökeskusteluille -- **GitHub Sponsors** - Tue ylläpitäjiä taloudellisesti -- **Security-välilehti** - Haavoittuvuusraportit ja turvallisuustiedotteet -- **Actions-välilehti** - Näe automatisoidut työnkulut ja CI/CD-putket -- **Insights-välilehti** - Analytiikkaa osallistujista, commit-viesteistä ja projektin tilasta -- **Projects-välilehti** - GitHubin sisäänrakennetut projektinhallintatyökalut +🔧 **Modernit GitHub-ominaisuudet**: +- **GitHub Discussions** - Sisäänrakennettu foorumi yhteisökeskusteluille +- **GitHub Sponsors** - Ylläpitäjien taloudellinen tukeminen +- **Security-välilehti** - Haavoittuvuusraportit ja turvallisuustiedotteet +- **Actions-välilehti** - Näe automatisoidut työnkulut ja CI/CD-putket +- **Insights-välilehti** - Analytiikkaa osallistujista, commit-viesteistä ja projektin tilasta +- **Projects-välilehti** - GitHubin sisäänrakennetut projektinhallintatyökalut -✅ Tutustu uuteen GitHub-repositorioosi ja kokeile muutamia asioita, kuten asetusten muokkaamista, tiedon lisäämistä repoosi, projektin luomista (kuten Kanban-taulu) ja GitHub Actionsin asettamista automaatiota varten. Voit tehdä paljon! +✅ Tutustu uuteen GitHub-repositorioosi ja kokeile muutamia asioita, kuten asetusten muokkaamista, tiedon lisäämistä repositorioon, projektin luomista (kuten Kanban-taulu) ja GitHub Actionsin asettamista automaatiota varten. Voit tehdä paljon! --- -## 🚀 Haaste +## 🚀 Haaste -Nyt on aika testata uudet GitHub-supervoimasi! 🚀 Tässä on haaste, joka saa kaiken loksahtamaan paikoilleen mitä tyydyttävimmällä tavalla: +Nyt on aika testata uudet GitHub-supervoimasi! 🚀 Tässä haaste, joka saa kaiken loksahtamaan paikoilleen: -Pyydä ystävä mukaan (tai perheenjäsen, joka aina kysyy, mitä teet kaikella tällä "tietokonehommalla") ja lähde yhdessä koodausseikkailuun! Tässä tapahtuu todellinen taika – luokaa projekti, antakaa heidän forkata se, tehkää haaroja ja yhdistäkää muutoksia kuin ammattilaiset, joita olette. +Ota mukaan ystävä (tai perheenjäsen, joka aina kysyy, mitä teet kaikella tällä "tietokonejutulla") ja lähde yhdessä koodausseikkailuun! Tässä tapahtuu todellinen taika – luokaa projekti, antakaa heidän forkata se, tehkää haaroja ja yhdistäkää muutoksia kuin ammattilaiset, joiksi olette tulossa. -En aio valehdella – saatatte nauraa jossain vaiheessa (varsinkin kun molemmat yrittävät muuttaa samaa riviä), ehkä raapia päätänne hämmennyksessä, mutta varmasti koette niitä upeita "aha!"-hetkiä, jotka tekevät kaikesta oppimisesta sen arvoista. Lisäksi on jotain erityistä siinä, kun jaatte ensimmäisen onnistuneen yhdistämisen jonkun toisen kanssa – se on kuin pieni juhla siitä, kuinka pitkälle olette päässeet! +En aio valehdella – saatatte nauraa jossain vaiheessa (varsinkin kun molemmat yrittävät muuttaa samaa riviä), ehkä raapia päätänne hämmennyksessä, mutta varmasti koette niitä upeita "aha!"-hetkiä, jotka tekevät oppimisesta kaiken arvoista. Lisäksi on jotain erityistä siinä, kun jaatte ensimmäisen onnistuneen yhdistämisen jonkun toisen kanssa – se on kuin pieni juhla siitä, kuinka pitkälle olette päässeet! -Eikö sinulla ole vielä koodauskaveria? Ei hätää! GitHub-yhteisö on täynnä uskomattoman tervetulleita ihmisiä, jotka muistavat, millaista oli olla uusi. Etsi repoja, joissa on "good first issue" -tunniste – ne käytännössä sanovat "Hei aloittelijat, tulkaa oppimaan kanssamme!" Kuinka mahtavaa se onkaan? +Eikö sinulla ole vielä koodauskaveria? Ei hätää! GitHub-yhteisö on täynnä uskomattoman tervetulleita ihmisiä, jotka muistavat, millaista oli olla uusi. Etsi repoja, joissa on "good first issue" -merkintä – ne käytännössä sanovat "Hei aloittelijat, tulkaa oppimaan kanssamme!" Kuinka mahtavaa se onkaan? -## Luentojälkeinen kysely +## Luentojälkeinen kysely [Luentojälkeinen kysely](https://ff-quizzes.netlify.app/web/en/) ## Kertaus & Jatka oppimista -Huh! 🎉 Katso sinua – olet juuri hallinnut GitHubin perusteet kuin todellinen mestari! Jos aivosi tuntuvat nyt hieman täysiltä, se on täysin normaalia ja rehellisesti hyvä merkki. Olet juuri oppinut työkaluja, joiden hallitseminen vei minulta viikkoja, kun aloitin. +Huh! 🎉 Katso sinua – olet juuri valloittanut GitHubin perusteet kuin todellinen mestari! Jos aivosi tuntuvat nyt hieman täysiltä, se on täysin normaalia ja rehellisesti hyvä merkki. Olet juuri oppinut työkaluja, joiden kanssa minulla kesti viikkoja tuntea oloni mukavaksi aloittaessani. -Git ja GitHub ovat uskomattoman voimakkaita (siis todella voimakkaita), ja jokainen tuntemani kehittäjä – mukaan lukien ne, jotka nyt vaikuttavat velhoilta – joutui harjoittelemaan ja kompuroimaan ennen kuin kaikki loksahti paikoilleen. Se, että olet päässyt tämän oppitunnin läpi, tarkoittaa, että olet jo matkalla hallitsemaan joitakin kehittäjän tärkeimpiä työkaluja. +Git ja GitHub ovat uskomattoman voimakkaita (siis todella voimakkaita), ja jokainen tuntemani kehittäjä – mukaan lukien ne, jotka nyt vaikuttavat velhoilta – joutui harjoittelemaan ja kompuroimaan ennen kuin kaikki loksahti paikoilleen. Se, että olet päässyt tämän oppitunnin läpi, tarkoittaa, että olet jo matkalla hallitsemaan joitakin kehittäjän työkalupakin tärkeimpiä työkaluja. -Tässä on joitakin aivan upeita resursseja, jotka auttavat sinua harjoittelemaan ja tulemaan vieläkin mahtavammaksi: +Tässä on joitakin todella upeita resursseja, jotka auttavat sinua harjoittelemaan ja tulemaan vieläkin mahtavammaksi: -- [Opas avoimen lähdekoodin ohjelmistoon osallistumisesta](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) – Karttasi vaikuttamiseen -- [Git-muistilappu](https://training.github.com/downloads/github-git-cheat-sheet/) – Pidä tämä kätevästi nopeaa viittausta varten! +- [Opas avoimen lähdekoodin ohjelmistoon osallistumisesta](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) – Karttasi vaikuttamiseen +- [Git-pikaopas](https://training.github.com/downloads/github-git-cheat-sheet/) – Pidä tämä käden ulottuvilla nopeaa viittausta varten! -Ja muista: harjoittelu tekee edistystä, ei täydellisyyttä! Mitä enemmän käytät Gitia ja GitHubia, sitä luonnollisemmaksi se muuttuu. GitHub on luonut joitakin upeita interaktiivisia kursseja, joiden avulla voit harjoitella turvallisessa ympäristössä: +Ja muista: harjoittelu tekee edistystä, ei täydellisyyttä! Mitä enemmän käytät Gitia ja GitHubia, sitä luonnollisemmaksi se muuttuu. GitHub on luonut joitakin upeita interaktiivisia kursseja, jotka antavat sinun harjoitella turvallisessa ympäristössä: -- [Johdatus GitHubiin](https://github.com/skills/introduction-to-github) +- [Johdatus GitHubiin](https://github.com/skills/introduction-to-github) - [Kommunikointi Markdownilla](https://github.com/skills/communicate-using-markdown) -- [GitHub Pages](https://github.com/skills/github-pages) +- [GitHub Pages](https://github.com/skills/github-pages) - [Yhdistämiskonfliktien hallinta](https://github.com/skills/resolve-merge-conflicts) -**Tunnetko itsesi seikkailunhaluiseksi? Tutustu näihin moderneihin työkaluihin:** -- [GitHub CLI -dokumentaatio](https://cli.github.com/manual/) – Kun haluat tuntea itsesi komentorivivelhoksi -- [GitHub Codespaces -dokumentaatio](https://docs.github.com/en/codespaces) – Koodaa pilvessä! -- [GitHub Actions -dokumentaatio](https://docs.github.com/en/actions) – Automatisoi kaikki -- [Git parhaat käytännöt](https://www.atlassian.com/git/tutorials/comparing-workflows) – Nosta työnkulkuasi uudelle tasolle +**Tunnetko seikkailunhalua? Tutustu näihin moderneihin työkaluihin:** +- [GitHub CLI -dokumentaatio](https://cli.github.com/manual/) – Kun haluat tuntea olosi komentorivivelhoksi +- [GitHub Codespaces -dokumentaatio](https://docs.github.com/en/codespaces) – Koodaa pilvessä! +- [GitHub Actions -dokumentaatio](https://docs.github.com/en/actions) – Automatisoi kaikki +- [Git parhaat käytännöt](https://www.atlassian.com/git/tutorials/comparing-workflows) – Nosta työnkulkuasi uudelle tasolle ## GitHub Copilot Agent -haaste 🚀 Käytä Agent-tilaa suorittaaksesi seuraavan haasteen: -**Kuvaus:** Luo yhteistyöhön perustuva web-kehitysprojekti, joka demonstroi koko GitHub-työnkulun, jonka olet oppinut tässä oppitunnissa. Tämä haaste auttaa sinua harjoittelemaan repositorion luomista, yhteistyöominaisuuksia ja moderneja Git-työnkulkuja todellisessa tilanteessa. +**Kuvaus:** Luo yhteistyöhön perustuva web-kehitysprojekti, joka esittelee koko GitHub-työnkulun, jonka olet oppinut tässä oppitunnissa. Tämä haaste auttaa sinua harjoittelemaan repositorion luomista, yhteistyöominaisuuksia ja moderneja Git-työnkulkuja todellisessa tilanteessa. -**Tehtävänanto:** Luo uusi julkinen GitHub-repositorio yksinkertaiselle "Web Development Resources" -projektille. Repositoriossa tulisi olla hyvin jäsennelty README.md-tiedosto, joka listaa hyödyllisiä web-kehitystyökaluja ja -resursseja kategorioittain (HTML, CSS, JavaScript jne.). Aseta repositorioon asianmukaiset yhteisöstandardit, mukaan lukien lisenssi, osallistumisohjeet ja käytännesäännöt. Luo vähintään kaksi ominaisuusharaa: yksi CSS-resurssien lisäämistä varten ja toinen JavaScript-resurssien lisäämistä varten. Tee commit-viestejä jokaiseen haaraan kuvaavilla commit-viesteillä, ja luo sitten pull requestit muutosten yhdistämiseksi takaisin päähaaraan. Ota käyttöön GitHub-ominaisuuksia, kuten Issues, Discussions, ja aseta perus GitHub Actions -työnkulku automaattisia tarkistuksia varten. +**Ohje:** Luo uusi julkinen GitHub-repositorio yksinkertaiselle "Web Development Resources" -projektille. Repositoriossa tulisi olla hyvin jäsennelty README.md-tiedosto, joka listaa hyödyllisiä web-kehitystyökaluja ja -resursseja, järjestettynä kategorioittain (HTML, CSS, JavaScript jne.). Aseta repositorio asianmukaisilla yhteisöstandardeilla, mukaan lukien lisenssi, osallistumisohjeet ja käytännesäännöt. Luo vähintään kaksi ominaisuushaaraa: yksi CSS-resurssien lisäämistä varten ja toinen JavaScript-resurssien lisäämistä varten. Tee commit-viestejä kumpaankin haaraan kuvailevilla commit-viesteillä, ja luo sitten pull requestit muutosten yhdistämiseksi takaisin päähaaraan. Ota käyttöön GitHub-ominaisuuksia kuten Issues, Discussions ja aseta perus GitHub Actions -työnkulku automatisoituja tarkistuksia varten. -## Tehtävä +## Tehtävä -Tehtäväsi, jos päätät hyväksyä sen: Suorita [Johdatus GitHubiin](https://github.com/skills/introduction-to-github) -kurssi GitHub Skillsissä. Tämä interaktiivinen kurssi antaa sinulle mahdollisuuden harjoitella kaikkea oppimaasi turvallisessa, ohjatussa ympäristössä. Lisäksi saat hienon merkin, kun olet valmis! 🏅 +Tehtäväsi, jos päätät hyväksyä sen: Suorita [Johdatus GitHubiin](https://github.com/skills/introduction-to-github) -kurssi GitHub Skillsissä. Tämä interaktiivinen kurssi antaa sinun harjoitella kaikkea oppimaasi turvallisessa, ohjatussa ympäristössä. Lisäksi saat hienon merkin, kun olet valmis! 🏅 -**Valmiina uusiin haasteisiin?** -- Aseta SSH-todennus GitHub-tilillesi (ei enää salasanoja!) -- Kokeile käyttää GitHub CLI:tä päivittäisissä Git-toiminnoissasi -- Luo repositorio GitHub Actions -työnkululla -- Tutustu GitHub Codespacesiin avaamalla tämä kyseinen repositorio pilvipohjaisessa editorissa +**Tunnetko olevasi valmis lisähaasteisiin?** +- Aseta SSH-todennus GitHub-tilillesi (ei enää salasanoja!) +- Kokeile käyttää GitHub CLI:tä päivittäisiin Git-toimintoihisi +- Luo repositorio GitHub Actions -työnkululla +- Tutustu GitHub Codespacesiin avaamalla tämä sama repositorio pilvipohjaisessa editorissa --- -## 🚀 GitHub-mestaruuden aikajana - -### ⚡ **Mitä voit tehdä seuraavan 5 minuutin aikana** -- [ ] Tähditä tämä repositorio ja 3 muuta sinua kiinnostavaa projektia -- [ ] Ota käyttöön kaksivaiheinen todennus GitHub-tililläsi -- [ ] Luo yksinkertainen README ensimmäiselle repositoriollesi -- [ ] Seuraa 5 kehittäjää, joiden työ inspiroi sinua - -### 🎯 **Mitä voit saavuttaa tämän tunnin aikana** -- [ ] Suorita luennonjälkeinen kysely ja pohdi GitHub-matkaasi -- [ ] Aseta SSH-avaimet salasanattomaan GitHub-todennukseen -- [ ] Tee ensimmäinen merkityksellinen commit loistavalla commit-viestillä -- [ ] Tutustu GitHubin "Explore"-välilehteen löytääksesi suosittuja projekteja -- [ ] Harjoittele repositorion forkaamista ja tee pieni muutos - -### 📅 **Viikon mittainen GitHub-seikkailusi** -- [ ] Suorita GitHub Skills -kurssit (Johdatus GitHubiin, Markdown) -- [ ] Tee ensimmäinen pull request avoimen lähdekoodin projektiin -- [ ] Aseta GitHub Pages -sivusto esittelemään töitäsi -- [ ] Liity GitHub Discussions -keskusteluihin sinua kiinnostavissa projekteissa -- [ ] Luo repositorio asianmukaisilla yhteisöstandardeilla (README, lisenssi jne.) -- [ ] Kokeile GitHub Codespacesia pilvipohjaiseen kehitykseen - -### 🌟 **Kuukauden mittainen muodonmuutos** -- [ ] Osallistu 3 eri avoimen lähdekoodin projektiin -- [ ] Mentoroit jotakuta, joka on uusi GitHubissa (anna hyvän kiertää!) -- [ ] Aseta automatisoituja työnkulkuja GitHub Actionsilla -- [ ] Rakenna portfolio, joka esittelee GitHub-kontribuutiosi -- [ ] Osallistu Hacktoberfestiin tai vastaaviin yhteisötapahtumiin -- [ ] Ryhdy oman projektisi ylläpitäjäksi, johon muut voivat osallistua +## 🚀 GitHub-mestaruusaikataulusi + +### ⚡ **Mitä voit tehdä seuraavan 5 minuutin aikana** +- [ ] Tähditä tämä repositorio ja 3 muuta projektia, jotka kiinnostavat sinua +- [ ] Ota käyttöön kaksivaiheinen todennus GitHub-tililläsi +- [ ] Luo yksinkertainen README ensimmäiselle repositoriollesi +- [ ] Seuraa 5 kehittäjää, joiden työ inspiroi sinua + +### 🎯 **Mitä voit saavuttaa tämän tunnin aikana** +- [ ] Suorita luentojälkeinen kysely ja pohdi GitHub-matkaasi +- [ ] Aseta SSH-avaimet salasanattomaan GitHub-todennukseen +- [ ] Tee ensimmäinen merkityksellinen commit-viesti loistavalla commit-viestillä +- [ ] Tutustu GitHubin "Explore"-välilehteen löytääksesi trendikkäitä projekteja +- [ ] Harjoittele repositorion forkkaamista ja pienen muutoksen tekemistä + +### 📅 **Viikon mittainen GitHub-seikkailusi** +- [ ] Suorita GitHub Skills -kurssit (Johdatus GitHubiin, Markdown) +- [ ] Tee ensimmäinen pull request avoimeen lähdekoodiprojektiin +- [ ] Aseta GitHub Pages -sivusto esitelläksesi työsi +- [ ] Liity GitHub Discussions -keskusteluihin projekteista, jotka kiinnostavat sinua +- [ ] Luo repositorio asianmukaisilla yhteisöstandardeilla (README, lisenssi jne.) +- [ ] Kokeile GitHub Codespacesia pilvipohjaiseen kehitykseen + +### 🌟 **Kuukauden mittainen muodonmuutos** +- [ ] Osallistu 3 eri avoimen lähdekoodin projektiin +- [ ] Mentoroi joku uusi GitHubissa (anna hyvän kiertää!) +- [ ] Aseta automatisoituja työnkulkuja GitHub Actionsilla +- [ ] Rakenna portfolio, joka esittelee GitHub-panoksesi +- [ ] Osallistu Hacktoberfestiin tai vastaaviin yhteisötapahtumiin +- [ ] Ryhdy ylläpitäjäksi omalle projektille, johon muut osallistuvat ### 🎓 **Lopullinen GitHub-mestaruuden tarkistus** -**Juhlista saavutuksiasi:** -- Mikä on suosikkiasiasi GitHubin käytössä? -- Mikä yhteistyöominaisuus innostaa sinua eniten? -- Kuinka itsevarma olet nyt avoimeen lähdekoodiin osallistumisessa? -- Mikä on ensimmäinen projekti, johon haluat osallistua? +**Juhlista kuinka pitkälle olet päässyt:** +- Mikä on suosikkiasiasi GitHubin käytössä? +- Mikä yhteistyöominaisuus innostaa sinua eniten? +- Kuinka varma olet avoimeen lähdekoodiin osallistumisesta nyt? +- Mikä on ensimmäinen projekti, johon haluat osallistua? ```mermaid journey - title Your GitHub Confidence Journey - section Today - Nervous: 3: You - Curious: 4: You - Excited: 5: You - section This Week - Practicing: 4: You - Contributing: 5: You - Connecting: 5: You - section Next Month - Collaborating: 5: You - Leading: 5: You - Inspiring Others: 5: You + title GitHub-itsevarmuutesi matka + section Tänään + Hermostunut: 3: Sinä + Utelias: 4: Sinä + Innostunut: 5: Sinä + section Tämä viikko + Harjoittelemassa: 4: Sinä + Osallistumassa: 5: Sinä + Yhteydessä: 5: Sinä + section Ensi kuukausi + Yhteistyössä: 5: Sinä + Johtamassa: 5: Sinä + Inspiroimassa muita: 5: Sinä ``` - -> 🌍 **Tervetuloa maailmanlaajuiseen kehittäjäyhteisöön!** Sinulla on nyt työkalut tehdä yhteistyötä miljoonien kehittäjien kanssa ympäri maailmaa. Ensimmäinen kontribuutiosi saattaa tuntua pieneltä, mutta muista – jokainen suuri avoimen lähdekoodin projekti alkoi siitä, että joku teki ensimmäisen commitinsa. Kysymys ei ole siitä, vaikutatko, vaan siitä, mikä upea projekti hyötyy ainutlaatuisesta näkökulmastasi ensimmäisenä! 🚀 +> 🌍 **Tervetuloa maailmanlaajuiseen kehittäjäyhteisöön!** Sinulla on nyt työkalut tehdä yhteistyötä miljoonien kehittäjien kanssa ympäri maailmaa. Ensimmäinen panoksesi saattaa tuntua pieneltä, mutta muista - jokainen suuri avoimen lähdekoodin projekti alkoi siitä, että joku teki ensimmäisen commitinsa. Kysymys ei ole siitä, vaikutatko, vaan siitä, mikä upea projekti hyötyy ainutlaatuisesta näkökulmastasi ensimmäisenä! 🚀 Muista: jokainen asiantuntija oli kerran aloittelija. Sinä pystyt tähän! 💪 --- + **Vastuuvapauslauseke**: -Tämä asiakirja on käännetty käyttämällä tekoälypohjaista käännöspalvelua [Co-op Translator](https://github.com/Azure/co-op-translator). Vaikka pyrimme tarkkuuteen, huomioithan, että automaattiset käännökset voivat sisältää virheitä tai epätarkkuuksia. Alkuperäinen asiakirja sen alkuperäisellä kielellä tulisi pitää ensisijaisena lähteenä. Kriittisen tiedon osalta suositellaan ammattimaista ihmiskäännöstä. Emme ole vastuussa väärinkäsityksistä tai virhetulkinnoista, jotka johtuvat tämän käännöksen käytöstä. \ No newline at end of file +Tämä asiakirja on käännetty käyttämällä tekoälypohjaista käännöspalvelua [Co-op Translator](https://github.com/Azure/co-op-translator). Vaikka pyrimme tarkkuuteen, huomioithan, että automaattiset käännökset voivat sisältää virheitä tai epätarkkuuksia. Alkuperäinen asiakirja sen alkuperäisellä kielellä tulisi pitää ensisijaisena lähteenä. Kriittisen tiedon osalta suositellaan ammattimaista ihmiskäännöstä. Emme ole vastuussa väärinkäsityksistä tai virhetulkinnoista, jotka johtuvat tämän käännöksen käytöstä. + \ No newline at end of file diff --git a/translations/fi/README.md b/translations/fi/README.md index 02319975..6f1a9a3a 100644 --- a/translations/fi/README.md +++ b/translations/fi/README.md @@ -1,208 +1,204 @@ -[![GitHub license](https://img.shields.io/github/license/microsoft/Web-Dev-For-Beginners.svg)](https://github.com/microsoft/Web-Dev-For-Beginners/blob/master/LICENSE) -[![GitHub contributors](https://img.shields.io/github/contributors/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/graphs/contributors/) -[![GitHub issues](https://img.shields.io/github/issues/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/issues/) -[![GitHub pull-requests](https://img.shields.io/github/issues-pr/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/pulls/) -[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) +[![GitHub license](https://img.shields.io/github/license/microsoft/Web-Dev-For-Beginners.svg)](https://github.com/microsoft/Web-Dev-For-Beginners/blob/master/LICENSE) +[![GitHub contributors](https://img.shields.io/github/contributors/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/graphs/contributors/) +[![GitHub issues](https://img.shields.io/github/issues/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/issues/) +[![GitHub pull-requests](https://img.shields.io/github/issues-pr/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/pulls/) +[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) -[![GitHub watchers](https://img.shields.io/github/watchers/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Watch&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/watchers/) -[![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Fork&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/network/) -[![GitHub stars](https://img.shields.io/github/stars/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Star&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/stargazers/) +[![GitHub watchers](https://img.shields.io/github/watchers/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Watch&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/watchers/) +[![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Fork&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/network/) +[![GitHub stars](https://img.shields.io/github/stars/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Star&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/stargazers/) -[![](https://dcbadge.vercel.app/api/server/ByRwuEEgH4)](https://discord.gg/zxKYvhSnVp?WT.mc_id=academic-000002-leestott) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) -# Web-kehitys aloittelijoille - Opetussuunnitelma +# Verkkokehitys aloittelijoille - Opetussuunnitelma -Opi web-kehityksen perusteet Microsoft Cloud Advocatesin 12 viikon kattavalla kurssilla. Jokainen 24 oppitunnista keskittyy JavaScriptiin, CSS:ään ja HTML:ään käytännön projektien, kuten terraarioiden, selainlaajennusten ja avaruuspelien, kautta. Osallistu visailuihin, keskusteluihin ja käytännön tehtäviin. Paranna taitojasi ja optimoi oppimisesi tehokkaalla projektipohjaisella pedagogiikallamme. Aloita koodausmatkasi jo tänään! +Opi verkkokehityksen perusteet Microsoft Cloud Advocatesin 12 viikon kattavalla kurssilla. Jokainen 24 oppitunnista käsittelee JavaScriptiä, CSS:ää ja HTML:ää käytännön projektien, kuten terraarioiden, selainlaajennusten ja avaruuspelien, kautta. Osallistu visoihin, keskusteluihin ja käytännön tehtäviin. Paranna taitojasi ja optimoi oppimisesi tehokkaalla projektipohjaisella lähestymistavallamme. Aloita koodausmatkasi jo tänään! -Liity Azure AI Foundry Discord -yhteisöön +Liity Azure AI Foundry Discord -yhteisöön -[![Microsoft Azure AI Foundry Discord](https://dcbadge.limes.pink/api/server/ByRwuEEgH4)](https://discord.com/invite/ByRwuEEgH4) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) -Seuraa näitä ohjeita päästäksesi alkuun näiden resurssien kanssa: -1. **Haarauta arkisto**: Klikkaa [![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/fork) -2. **Kloonaa arkisto**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` -3. [**Liity Azure AI Foundry Discordiin ja tapaa asiantuntijoita ja muita kehittäjiä**](https://discord.com/invite/ByRwuEEgH4) +Seuraa näitä ohjeita aloittaaksesi näiden resurssien käytön: +1. **Haarauta arkisto**: Klikkaa [![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/fork) +2. **Kloonaa arkisto**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` +3. [**Liity Azure AI Foundry Discordiin ja tapaa asiantuntijoita ja muita kehittäjiä**](https://discord.com/invite/ByRwuEEgH4) -### 🌐 Monikielinen tuki +### 🌐 Monikielinen tuki -#### Tuettu GitHub Actionin kautta (automaattinen ja aina ajan tasalla) +#### Tuettu GitHub Actionin kautta (automaattinen ja aina ajan tasalla) - -[Arabic](../ar/README.md) | [Bengali](../bn/README.md) | [Bulgarian](../bg/README.md) | [Burmese (Myanmar)](../my/README.md) | [Chinese (Simplified)](../zh/README.md) | [Chinese (Traditional, Hong Kong)](../hk/README.md) | [Chinese (Traditional, Macau)](../mo/README.md) | [Chinese (Traditional, Taiwan)](../tw/README.md) | [Croatian](../hr/README.md) | [Czech](../cs/README.md) | [Danish](../da/README.md) | [Dutch](../nl/README.md) | [Estonian](../et/README.md) | [Finnish](./README.md) | [French](../fr/README.md) | [German](../de/README.md) | [Greek](../el/README.md) | [Hebrew](../he/README.md) | [Hindi](../hi/README.md) | [Hungarian](../hu/README.md) | [Indonesian](../id/README.md) | [Italian](../it/README.md) | [Japanese](../ja/README.md) | [Korean](../ko/README.md) | [Lithuanian](../lt/README.md) | [Malay](../ms/README.md) | [Marathi](../mr/README.md) | [Nepali](../ne/README.md) | [Norwegian](../no/README.md) | [Persian (Farsi)](../fa/README.md) | [Polish](../pl/README.md) | [Portuguese (Brazil)](../br/README.md) | [Portuguese (Portugal)](../pt/README.md) | [Punjabi (Gurmukhi)](../pa/README.md) | [Romanian](../ro/README.md) | [Russian](../ru/README.md) | [Serbian (Cyrillic)](../sr/README.md) | [Slovak](../sk/README.md) | [Slovenian](../sl/README.md) | [Spanish](../es/README.md) | [Swahili](../sw/README.md) | [Swedish](../sv/README.md) | [Tagalog (Filipino)](../tl/README.md) | [Tamil](../ta/README.md) | [Thai](../th/README.md) | [Turkish](../tr/README.md) | [Ukrainian](../uk/README.md) | [Urdu](../ur/README.md) | [Vietnamese](../vi/README.md) - + +[Arabic](../ar/README.md) | [Bengali](../bn/README.md) | [Bulgarian](../bg/README.md) | [Burmese (Myanmar)](../my/README.md) | [Chinese (Simplified)](../zh/README.md) | [Chinese (Traditional, Hong Kong)](../hk/README.md) | [Chinese (Traditional, Macau)](../mo/README.md) | [Chinese (Traditional, Taiwan)](../tw/README.md) | [Croatian](../hr/README.md) | [Czech](../cs/README.md) | [Danish](../da/README.md) | [Dutch](../nl/README.md) | [Estonian](../et/README.md) | [Finnish](./README.md) | [French](../fr/README.md) | [German](../de/README.md) | [Greek](../el/README.md) | [Hebrew](../he/README.md) | [Hindi](../hi/README.md) | [Hungarian](../hu/README.md) | [Indonesian](../id/README.md) | [Italian](../it/README.md) | [Japanese](../ja/README.md) | [Korean](../ko/README.md) | [Lithuanian](../lt/README.md) | [Malay](../ms/README.md) | [Marathi](../mr/README.md) | [Nepali](../ne/README.md) | [Norwegian](../no/README.md) | [Persian (Farsi)](../fa/README.md) | [Polish](../pl/README.md) | [Portuguese (Brazil)](../br/README.md) | [Portuguese (Portugal)](../pt/README.md) | [Punjabi (Gurmukhi)](../pa/README.md) | [Romanian](../ro/README.md) | [Russian](../ru/README.md) | [Serbian (Cyrillic)](../sr/README.md) | [Slovak](../sk/README.md) | [Slovenian](../sl/README.md) | [Spanish](../es/README.md) | [Swahili](../sw/README.md) | [Swedish](../sv/README.md) | [Tagalog (Filipino)](../tl/README.md) | [Tamil](../ta/README.md) | [Thai](../th/README.md) | [Turkish](../tr/README.md) | [Ukrainian](../uk/README.md) | [Urdu](../ur/README.md) | [Vietnamese](../vi/README.md) + -**Jos haluat lisätä tuettuja kieliä, ne on listattu [täällä](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)** +**Jos haluat lisätä uusia käännöksiä, tuetut kielet löytyvät [täältä](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)** -[![Open in Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners) +[![Open in Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners) -#### 🧑‍🎓 _Oletko opiskelija?_ +#### 🧑‍🎓 _Oletko opiskelija?_ -Vieraile [**Student Hub -sivulla**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon), josta löydät aloittelijoille suunnattuja resursseja, opiskelijapakkauksia ja jopa mahdollisuuden saada ilmainen sertifikaattivoucher. Tämä on sivu, jonka haluat tallentaa kirjanmerkkeihin ja tarkistaa säännöllisesti, sillä sisältöä päivitetään kuukausittain. +Vieraile [**Student Hub -sivulla**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon), josta löydät aloitteleville suunnattuja resursseja, opiskelijapaketit ja jopa tapoja saada ilmainen sertifikaattivoucher. Tämä on sivu, jonka haluat tallentaa kirjanmerkkeihin ja tarkistaa säännöllisesti, sillä sisältö vaihtuu kuukausittain. -### 📣 Ilmoitus - Uusia GitHub Copilot Agent -tilan haasteita! +### 📣 Ilmoitus - Uusia GitHub Copilot Agent -haasteita! -Uusi haaste lisätty, etsi "GitHub Copilot Agent Challenge 🚀" useimmista luvuista. Tämä on uusi haaste, jonka voit suorittaa käyttämällä GitHub Copilotia ja Agent-tilaa. Jos et ole käyttänyt Agent-tilaa aiemmin, se ei ainoastaan luo tekstiä, vaan voi myös luoda ja muokata tiedostoja, suorittaa komentoja ja paljon muuta. +Uusi haaste lisätty, etsi "GitHub Copilot Agent Challenge 🚀" useimmista luvuista. Tämä on uusi haaste, jonka voit suorittaa GitHub Copilotin ja Agent-tilan avulla. Jos et ole käyttänyt Agent-tilaa aiemmin, se ei vain luo tekstiä, vaan voi myös luoda ja muokata tiedostoja, suorittaa komentoja ja paljon muuta. -### 📣 Ilmoitus - _Uusi projekti Generatiivisen tekoälyn avulla_ +### 📣 Ilmoitus - _Uusi projekti Generative AI:n avulla_ -Uusi AI Assistant -projekti juuri lisätty, tutustu siihen [projekti](./09-chat-project/README.md) +Uusi AI Assistant -projekti on juuri lisätty, tutustu siihen [projekti](./09-chat-project/README.md) -### 📣 Ilmoitus - _Uusi opetussuunnitelma_ Generatiivisesta tekoälystä JavaScriptille julkaistu +### 📣 Ilmoitus - _Uusi opetussuunnitelma_ Generative AI:sta JavaScriptille julkaistu -Älä missaa uutta Generatiivisen tekoälyn opetussuunnitelmaamme! +Älä missaa uutta Generative AI -opetussuunnitelmaamme! -Vieraile [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) aloittaaksesi! +Vieraile [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) aloittaaksesi! -![Tausta](../../translated_images/background.148a8d43afde57303419a663f50daf586681bc2fabf833f66ef6954073983c66.fi.png) +![Tausta](../../translated_images/background.148a8d43afde57303419a663f50daf586681bc2fabf833f66ef6954073983c66.fi.png) -- Oppitunteja, jotka kattavat kaiken perusteista RAG:iin. -- Keskustele historiallisten hahmojen kanssa GenAI:n ja kumppanisovelluksemme avulla. -- Hauska ja mukaansatempaava tarina, jossa matkustat ajassa! +- Oppitunteja, jotka kattavat kaiken perusteista RAG:iin. +- Keskustele historiallisten hahmojen kanssa GenAI:n ja kumppanisovelluksemme avulla. +- Hauska ja mukaansatempaava tarina, jossa matkustat ajassa! -![hahmo](../../translated_images/character.5c0dd8e067ffd693c16e2c5b7412ab075a2215ce31f998305639fa3a05e14fbe.fi.png) +![hahmo](../../translated_images/character.5c0dd8e067ffd693c16e2c5b7412ab075a2215ce31f998305639fa3a05e14fbe.fi.png) -Jokainen oppitunti sisältää tehtävän, tietotestin ja haasteen, jotka ohjaavat sinua oppimaan aiheita, kuten: -- Kehottaminen ja kehotetekniikat -- Teksti- ja kuvapohjaisten sovellusten luominen -- Hakusovellukset +Jokainen oppitunti sisältää tehtävän, tietotestin ja haasteen, jotka ohjaavat sinua oppimaan aiheita, kuten: +- Kehotus ja kehotustekniikat +- Teksti- ja kuvasovellusten luominen +- Hakusovellukset -Vieraile [https://aka.ms/genai-js-course](../../[https:/aka.ms/genai-js-course) aloittaaksesi! +Vieraile [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) aloittaaksesi! +## 🌱 Aloittaminen +> **Opettajat**, olemme [lisänneet joitakin ehdotuksia](for-teachers.md) tämän opetussuunnitelman käyttöön. Haluaisimme kuulla palautettanne [keskustelufoorumillamme](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! -## 🌱 Aloittaminen +**[Oppijat](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, jokaisessa oppitunnissa aloita ennakkotestillä ja jatka lukemalla oppimateriaali, suorittamalla erilaisia aktiviteetteja ja tarkista ymmärryksesi jälkitestillä. -> **Opettajat**, olemme [lisänneet joitakin ehdotuksia](for-teachers.md) siitä, miten käyttää tätä opetussuunnitelmaa. Haluaisimme kuulla palautettanne [keskustelufoorumillamme](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! +Parantaaksesi oppimiskokemustasi, yhdistä voimasi muiden kanssa työskennelläksesi projekteissa yhdessä! Keskustelut ovat tervetulleita [keskustelufoorumillamme](https://github.com/microsoft/Web-Dev-For-Beginners/discussions), jossa moderaattoritiimimme vastaa kysymyksiisi. -**[Oppijat](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, jokaisessa oppitunnissa aloita ennakkovisailulla ja jatka lukemalla oppituntimateriaali, suorittamalla erilaisia aktiviteetteja ja tarkista ymmärryksesi jälkivisailulla. +Jatkaaksesi oppimistasi suosittelemme tutustumaan [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) -sivustoon lisämateriaalien löytämiseksi. -Parantaaksesi oppimiskokemustasi, yhdistä voimasi muiden kanssa ja työskentele projekteissa yhdessä! Keskusteluja kannustetaan [keskustelufoorumillamme](https://github.com/microsoft/Web-Dev-For-Beginners/discussions), jossa moderaattoritiimimme on valmiina vastaamaan kysymyksiisi. +### 📋 Ympäristön asettaminen -Jatkaaksesi oppimistasi suosittelemme lämpimästi tutustumaan [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) -sivustoon lisämateriaalien löytämiseksi. +Tämä opetussuunnitelma sisältää valmiin kehitysympäristön! Aloittaessasi voit valita, haluatko suorittaa opetussuunnitelman [Codespacessa](https://github.com/features/codespaces/) (_selaimessa toimiva ympäristö, ei asennuksia tarvita_) vai paikallisesti tietokoneellasi käyttämällä tekstieditoria, kuten [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). -### 📋 Ympäristön asettaminen +#### Luo oma arkistosi +Jotta voit helposti tallentaa työsi, suosittelemme luomaan oman kopion tästä arkistosta. Voit tehdä tämän klikkaamalla **Käytä tätä mallia** -painiketta sivun yläosassa. Tämä luo uuden arkiston GitHub-tilillesi kopiona opetussuunnitelmasta. -Tämä opetussuunnitelma sisältää valmiin kehitysympäristön! Aloittaessasi voit valita, haluatko käyttää opetussuunnitelmaa [Codespacessa](https://github.com/features/codespaces/) (_selaimen kautta, ei asennuksia tarvitaan_), vai paikallisesti tietokoneellasi tekstieditorin, kuten [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon), avulla. +Seuraa näitä ohjeita: +1. **Haarauta arkisto**: Klikkaa "Fork"-painiketta tämän sivun oikeassa yläkulmassa. +2. **Kloonaa arkisto**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` -#### Luo arkistosi -Jotta voit helposti tallentaa työsi, suosittelemme, että luot oman kopion tästä arkistosta. Voit tehdä tämän napsauttamalla **Käytä tätä mallia** -painiketta sivun yläosassa. Tämä luo uuden arkiston GitHub-tilillesi kopion opetussuunnitelmasta. +#### Opetussuunnitelman suorittaminen Codespacessa -Seuraa näitä ohjeita: -1. **Haarauta arkisto**: Klikkaa "Fork"-painiketta tämän sivun oikeassa yläkulmassa. -2. **Kloonaa arkisto**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` +Omassa kopiossasi tästä arkistosta, jonka loit, klikkaa **Code**-painiketta ja valitse **Open with Codespaces**. Tämä luo uuden Codespacen, jossa voit työskennellä. -#### Opetussuunnitelman suorittaminen Codespacessa +![Codespace](../../translated_images/createcodespace.0238bbf4d7a8d955fa8fa7f7b6602a3cb6499a24708fbee589f83211c5a613b7.fi.png) -Kopioimassasi arkistossa, jonka loit, napsauta **Code**-painiketta ja valitse **Open with Codespaces**. Tämä luo uuden Codespacen, jossa voit työskennellä. +#### Opetussuunnitelman suorittaminen paikallisesti tietokoneellasi -![Codespace](../../translated_images/createcodespace.0238bbf4d7a8d955fa8fa7f7b6602a3cb6499a24708fbee589f83211c5a613b7.fi.png) +Suorittaaksesi tämän opetussuunnitelman paikallisesti tietokoneellasi, tarvitset tekstieditorin, selaimen ja komentorivityökalun. Ensimmäinen oppituntimme, [Johdanto ohjelmointikieliin ja työkaluihin](../../1-getting-started-lessons/1-intro-to-programming-languages), opastaa sinut eri vaihtoehtojen läpi, jotta voit valita itsellesi parhaiten sopivat työkalut. -#### Opetussuunnitelman suorittaminen paikallisesti tietokoneellasi +Suosituksemme on käyttää [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) -editoria, jossa on myös sisäänrakennettu [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon). Voit ladata Visual Studio Coden [täältä](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). -Suorittaaksesi tämän opetussuunnitelman paikallisesti tietokoneellasi, tarvitset tekstieditorin, selaimen ja komentorivityökalun. Ensimmäinen oppituntimme, [Johdatus ohjelmointikieliin ja työkaluihin](../../1-getting-started-lessons/1-intro-to-programming-languages), opastaa sinut eri vaihtoehtojen läpi, jotta voit valita itsellesi parhaiten sopivat työkalut. +1. Kloonaa arkistosi tietokoneellesi. Voit tehdä tämän klikkaamalla **Code**-painiketta ja kopioimalla URL-osoitteen: -Suosittelemme käyttämään [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) -editoria, jossa on myös sisäänrakennettu [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon). Voit ladata Visual Studio Coden [täältä](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). + [CodeSpace](./images/createcodespace.png) - -1. Kloonaa arkistosi tietokoneellesi. Voit tehdä tämän napsauttamalla **Code**-painiketta ja kopioimalla URL-osoitteen: - - [CodeSpace](./images/createcodespace.png) - - Avaa sitten [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) [Visual Studio Codessa](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) ja suorita seuraava komento, korvaten `` juuri kopioimallasi URL-osoitteella: + Avaa sitten [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) [Visual Studio Codessa](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) ja suorita seuraava komento, korvaten `` juuri kopioimallasi URL-osoitteella: ```bash git clone ``` + +2. Avaa kansio Visual Studio Codessa. Voit tehdä tämän klikkaamalla **File** > **Open Folder** ja valitsemalla juuri kloonaamasi kansion. -2. Avaa kansio Visual Studio Codessa. Voit tehdä tämän napsauttamalla **File** > **Open Folder** ja valitsemalla juuri kloonaamasi kansion. - - -> Suositellut Visual Studio Code -laajennukset: -> -> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - HTML-sivujen esikatseluun Visual Studio Codessa +> Suositellut Visual Studio Code -laajennukset: +> +> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - HTML-sivujen esikatseluun Visual Studio Codessa > * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - auttaa sinua kirjoittamaan koodia nopeammin ## 📂 Jokainen oppitunti sisältää: -- valinnainen luonnoskuva +- valinnainen luonnosmuistiinpano - valinnainen lisävideo - alkulämmittelykysely ennen oppituntia - kirjallinen oppitunti - projektipohjaisissa oppitunneissa vaiheittaiset ohjeet projektin rakentamiseen -- tietotarkistukset +- tietojen tarkistukset - haaste - lisälukemista - tehtävä - [kysely oppitunnin jälkeen](https://ff-quizzes.netlify.app/web/) -> **Huomio kyselyistä**: Kaikki kyselyt löytyvät Quiz-app-kansiosta, yhteensä 48 kyselyä, joissa on kolme kysymystä kussakin. Ne ovat saatavilla [täällä](https://ff-quizzes.netlify.app/web/), ja kyselysovelluksen voi ajaa paikallisesti tai julkaista Azureen; seuraa ohjeita `quiz-app`-kansiossa. +> **Huomio kyselyistä**: Kaikki kyselyt löytyvät Quiz-app-kansiosta, yhteensä 48 kyselyä, joissa jokaisessa on kolme kysymystä. Ne ovat saatavilla [täällä](https://ff-quizzes.netlify.app/web/), ja kyselysovelluksen voi ajaa paikallisesti tai julkaista Azureen; seuraa ohjeita `quiz-app`-kansiossa. ## 🗃️ Oppitunnit | | Projektin nimi | Opetettavat käsitteet | Oppimistavoitteet | Linkitetty oppitunti | Tekijä | | :-: | :------------------------------------------------------: | :--------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------: | :---------------------: | -| 01 | Aloittaminen | Johdatus ohjelmointiin ja työkaluihin | Opi ohjelmointikielten perusperiaatteet ja ohjelmistoista, jotka auttavat ammattilaisia työssään | [Johdatus ohjelmointikieliin ja työkaluihin](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine | -| 02 | Aloittaminen | GitHubin perusteet, sisältäen tiimityöskentelyn | Kuinka käyttää GitHubia projektissasi ja tehdä yhteistyötä muiden kanssa koodipohjan parissa | [Johdatus GitHubiin](./1-getting-started-lessons/2-github-basics/README.md) | Floor | -| 03 | Aloittaminen | Saavutettavuus | Opi verkkosaavutettavuuden perusteet | [Saavutettavuuden perusteet](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | -| 04 | JS-perusteet | JavaScriptin tietotyypit | JavaScriptin tietotyyppien perusteet | [Tietotyypit](./2-js-basics/1-data-types/README.md) | Jasmine | -| 05 | JS-perusteet | Funktiot ja metodit | Opi funktioista ja metodeista sovelluksen logiikan hallinnassa | [Funktiot ja metodit](./2-js-basics/2-functions-methods/README.md) | Jasmine ja Christopher | -| 06 | JS-perusteet | Päätöksenteko JS:llä | Opi luomaan ehtoja koodissasi päätöksentekomenetelmien avulla | [Päätöksenteko](./2-js-basics/3-making-decisions/README.md) | Jasmine | -| 07 | JS-perusteet | Taulukot ja silmukat | Työskentele datan kanssa JavaScriptin taulukoiden ja silmukoiden avulla | [Taulukot ja silmukat](./2-js-basics/4-arrays-loops/README.md) | Jasmine | -| 08 | [Terrarium](./3-terrarium/solution/README.md) | HTML käytännössä | Rakenna HTML luodaksesi verkkoterrariumin, keskittyen ulkoasun rakentamiseen | [Johdatus HTML:ään](./3-terrarium/1-intro-to-html/README.md) | Jen | -| 09 | [Terrarium](./3-terrarium/solution/README.md) | CSS käytännössä | Rakenna CSS tyylittääksesi verkkoterrariumin, keskittyen CSS:n perusteisiin, mukaan lukien sivun responsiivisuus | [Johdatus CSS:ään](./3-terrarium/2-intro-to-css/README.md) | Jen | -| 10 | [Terrarium](./3-terrarium/solution/README.md) | JavaScriptin sulkeet, DOM-manipulaatio | Rakenna JavaScript, jotta terrarium toimii vedä ja pudota -käyttöliittymänä, keskittyen sulkeisiin ja DOM-manipulaatioon | [JavaScriptin sulkeet, DOM-manipulaatio](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | +| 01 | Aloitetaan | Johdatus ohjelmointiin ja työkaluihin | Opi ohjelmointikielten perusperiaatteet ja ohjelmistot, jotka auttavat ammattilaiskehittäjiä työssään | [Johdatus ohjelmointikieliin ja työkaluihin](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine | +| 02 | Aloitetaan | GitHubin perusteet, sisältää tiimityöskentelyn | Kuinka käyttää GitHubia projektissasi ja tehdä yhteistyötä muiden kanssa koodipohjassa | [Johdatus GitHubiin](./1-getting-started-lessons/2-github-basics/README.md) | Floor | +| 03 | Aloitetaan | Saavutettavuus | Opi verkkosaavutettavuuden perusteet | [Saavutettavuuden perusteet](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | +| 04 | JS:n perusteet | JavaScriptin tietotyypit | JavaScriptin tietotyyppien perusteet | [Tietotyypit](./2-js-basics/1-data-types/README.md) | Jasmine | +| 05 | JS:n perusteet | Funktiot ja metodit | Opi funktioista ja metodeista sovelluksen logiikan hallintaan | [Funktiot ja metodit](./2-js-basics/2-functions-methods/README.md) | Jasmine ja Christopher | +| 06 | JS:n perusteet | Päätöksenteko JS:llä | Opi luomaan ehtoja koodissasi päätöksentekomenetelmien avulla | [Päätöksenteko](./2-js-basics/3-making-decisions/README.md) | Jasmine | +| 07 | JS:n perusteet | Taulukot ja silmukat | Työskentele datan kanssa JavaScriptin taulukoiden ja silmukoiden avulla | [Taulukot ja silmukat](./2-js-basics/4-arrays-loops/README.md) | Jasmine | +| 08 | [Terraario](./3-terrarium/solution/README.md) | HTML käytännössä | Rakenna HTML luodaksesi verkkoterraarion, keskittyen asettelun rakentamiseen | [Johdatus HTML:ään](./3-terrarium/1-intro-to-html/README.md) | Jen | +| 09 | [Terraario](./3-terrarium/solution/README.md) | CSS käytännössä | Rakenna CSS tyylittääksesi verkkoterraarion, keskittyen CSS:n perusteisiin, mukaan lukien sivun responsiivisuus | [Johdatus CSS:ään](./3-terrarium/2-intro-to-css/README.md) | Jen | +| 10 | [Terraario](./3-terrarium/solution/README.md) | JavaScriptin sulkeumat, DOM-manipulointi | Rakenna JavaScript, jotta terraario toimii vedä/pudota-käyttöliittymänä, keskittyen sulkeumiin ja DOM-manipulointiin | [JavaScriptin sulkeumat, DOM-manipulointi](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | | 11 | [Kirjoituspeli](./4-typing-game/solution/README.md) | Rakenna kirjoituspeli | Opi käyttämään näppäimistötapahtumia JavaScript-sovelluksesi logiikan ohjaamiseen | [Tapahtumapohjainen ohjelmointi](./4-typing-game/typing-game/README.md) | Christopher | -| 12 | [Vihreä selainlaajennus](./5-browser-extension/solution/README.md) | Työskentely selainten kanssa | Opi, miten selaimet toimivat, niiden historia ja miten selainlaajennuksen ensimmäiset elementit rakennetaan | [Tietoa selaimista](./5-browser-extension/1-about-browsers/README.md) | Jen | -| 13 | [Vihreä selainlaajennus](./5-browser-extension/solution/README.md) | Lomakkeen rakentaminen, API:n kutsuminen ja muuttujien tallentaminen paikalliseen muistiin | Rakenna JavaScript-elementit selainlaajennuksellesi kutsuaksesi API:n käyttäen paikalliseen muistiin tallennettuja muuttujia | [API:t, lomakkeet ja paikallinen muisti](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | -| 14 | [Vihreä selainlaajennus](./5-browser-extension/solution/README.md) | Taustaprosessit selaimessa, verkkosuorituskyky | Käytä selaimen taustaprosesseja hallitaksesi laajennuksen kuvaketta; opi verkkosuorituskyvystä ja joistakin optimoinneista | [Taustatehtävät ja suorituskyky](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | -| 15 | [Avaruuspeli](./6-space-game/solution/README.md) | Edistyneempi pelinkehitys JavaScriptillä | Opi perimästä käyttäen sekä luokkia että koostumusta ja Pub/Sub-mallia, valmistautuessasi pelin rakentamiseen | [Johdatus edistyneeseen pelinkehitykseen](./6-space-game/1-introduction/README.md) | Chris | -| 16 | [Avaruuspeli](./6-space-game/solution/README.md) | Piirtäminen canvasille | Opi Canvas API:sta, jota käytetään elementtien piirtämiseen näytölle | [Piirtäminen canvasille](./6-space-game/2-drawing-to-canvas/README.md) | Chris | -| 17 | [Avaruuspeli](./6-space-game/solution/README.md) | Elementtien liikuttaminen näytöllä | Opi, miten elementit voivat saada liikkeen käyttämällä suorakulmaisia koordinaatteja ja Canvas API:ta | [Elementtien liikuttaminen](./6-space-game/3-moving-elements-around/README.md) | Chris | -| 18 | [Avaruuspeli](./6-space-game/solution/README.md) | Törmäysten tunnistus | Tee elementeistä törmääviä ja reagoivia toisiinsa näppäinpainallusten avulla ja tarjoa viivefunktio pelin suorituskyvyn varmistamiseksi | [Törmäysten tunnistus](./6-space-game/4-collision-detection/README.md) | Chris | +| 12 | [Vihreä selainlaajennus](./5-browser-extension/solution/README.md) | Työskentely selainten kanssa | Opi, miten selaimet toimivat, niiden historia ja miten luoda selainlaajennuksen ensimmäiset elementit | [Tietoa selaimista](./5-browser-extension/1-about-browsers/README.md) | Jen | +| 13 | [Vihreä selainlaajennus](./5-browser-extension/solution/README.md) | Lomakkeen rakentaminen, API-kutsut ja muuttujien tallentaminen paikallisesti | Rakenna selainlaajennuksesi JavaScript-elementit kutsumaan API:a käyttäen paikallisesti tallennettuja muuttujia | [API:t, lomakkeet ja paikallinen tallennus](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | +| 14 | [Vihreä selainlaajennus](./5-browser-extension/solution/README.md) | Taustaprosessit selaimessa, verkkosuorituskyky | Käytä selaimen taustaprosesseja hallitsemaan laajennuksen kuvaketta; opi verkkosuorituskyvystä ja optimoinneista | [Taustatehtävät ja suorituskyky](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | +| 15 | [Avaruuspeli](./6-space-game/solution/README.md) | Edistyneempi pelikehitys JavaScriptillä | Opi perimästä käyttäen sekä luokkia että koostumusta sekä Pub/Sub-mallia pelin rakentamisen valmistelussa | [Johdatus edistyneeseen pelikehitykseen](./6-space-game/1-introduction/README.md) | Chris | +| 16 | [Avaruuspeli](./6-space-game/solution/README.md) | Piirtäminen kankaalle | Opi Canvas API:sta, jota käytetään elementtien piirtämiseen näytölle | [Piirtäminen kankaalle](./6-space-game/2-drawing-to-canvas/README.md) | Chris | +| 17 | [Avaruuspeli](./6-space-game/solution/README.md) | Elementtien liikuttaminen näytöllä | Opi, miten elementit voivat liikkua käyttäen koordinaatistoa ja Canvas API:a | [Elementtien liikuttaminen](./6-space-game/3-moving-elements-around/README.md) | Chris | +| 18 | [Avaruuspeli](./6-space-game/solution/README.md) | Törmäyksen tunnistus | Tee elementeistä törmääviä ja reagoivia toisiinsa näppäinpainallusten avulla ja tarjoa viivefunktio pelin suorituskyvyn varmistamiseksi | [Törmäyksen tunnistus](./6-space-game/4-collision-detection/README.md) | Chris | | 19 | [Avaruuspeli](./6-space-game/solution/README.md) | Pisteiden laskeminen | Suorita matemaattisia laskelmia pelin tilan ja suorituskyvyn perusteella | [Pisteiden laskeminen](./6-space-game/5-keeping-score/README.md) | Chris | -| 20 | [Avaruuspeli](./6-space-game/solution/README.md) | Pelin lopettaminen ja uudelleenkäynnistäminen | Opi pelin lopettamisesta ja uudelleenkäynnistämisestä, mukaan lukien resurssien siivoaminen ja muuttujien arvojen palauttaminen | [Lopetusehto](./6-space-game/6-end-condition/README.md) | Chris | -| 21 | [Pankkisovellus](./7-bank-project/solution/README.md) | HTML-mallit ja reitit verkkosovelluksessa | Opi luomaan monisivuisen verkkosivuston arkkitehtuurin perusrakenne käyttäen reititystä ja HTML-malleja | [HTML-mallit ja reitit](./7-bank-project/1-template-route/README.md) | Yohan | -| 22 | [Pankkisovellus](./7-bank-project/solution/README.md) | Kirjautumis- ja rekisteröintilomakkeen rakentaminen | Opi lomakkeiden rakentamisesta ja validointirutiinien käsittelystä | [Lomakkeet](./7-bank-project/2-forms/README.md) | Yohan | -| 23 | [Pankkisovellus](./7-bank-project/solution/README.md) | Datan hakemisen ja käytön menetelmät | Miten data kulkee sisään ja ulos sovelluksestasi, miten sitä haetaan, tallennetaan ja hävitetään | [Data](./7-bank-project/3-data/README.md) | Yohan | +| 20 | [Avaruuspeli](./6-space-game/solution/README.md) | Pelin lopettaminen ja uudelleenkäynnistys | Opi pelin lopettamisesta ja uudelleenkäynnistämisestä, mukaan lukien resurssien siivoaminen ja muuttujien arvojen palauttaminen | [Lopetusehto](./6-space-game/6-end-condition/README.md) | Chris | +| 21 | [Pankkisovellus](./7-bank-project/solution/README.md) | HTML-mallit ja reitit verkkosovelluksessa | Opi luomaan monisivuisen verkkosivuston arkkitehtuurin perusta käyttäen reititystä ja HTML-malleja | [HTML-mallit ja reitit](./7-bank-project/1-template-route/README.md) | Yohan | +| 22 | [Pankkisovellus](./7-bank-project/solution/README.md) | Kirjautumis- ja rekisteröintilomakkeen rakentaminen | Opi rakentamaan lomakkeita ja käsittelemään validointirutiineja | [Lomakkeet](./7-bank-project/2-forms/README.md) | Yohan | +| 23 | [Pankkisovellus](./7-bank-project/solution/README.md) | Datan hakemisen ja käytön menetelmät | Miten data virtaa sovellukseesi, miten sitä haetaan, tallennetaan ja hävitetään | [Data](./7-bank-project/3-data/README.md) | Yohan | | 24 | [Pankkisovellus](./7-bank-project/solution/README.md) | Tilanhallinnan käsitteet | Opi, miten sovelluksesi säilyttää tilan ja miten sitä hallitaan ohjelmallisesti | [Tilanhallinta](./7-bank-project/4-state-management/README.md) | Yohan | -| 25 | [Selain/VScode-koodi](../../8-code-editor) | Työskentely VScodessa | Opi käyttämään koodieditoria| [Käytä VScode-koodieditoria](./8-code-editor/1-using-a-code-editor/README.md) | Chris | -| 26 | [AI-avustajat](./9-chat-project/README.md) | Työskentely tekoälyn kanssa | Opi rakentamaan oma tekoälyavustaja | [AI-avustajaprojekti](./9-chat-project/README.md) | Chris | +| 25 | [Selain/VSCode-koodi](../../8-code-editor) | Työskentely VSCode:lla | Opi käyttämään koodieditoria | [Käytä VSCode-koodieditoria](./8-code-editor/1-using-a-code-editor/README.md) | Chris | +| 26 | [AI-avustajat](./9-chat-project/README.md) | Työskentely tekoälyn kanssa | Opi rakentamaan oma tekoälyavustaja | [Tekoälyavustajaprojekti](./9-chat-project/README.md) | Chris | ## 🏫 Pedagogiikka -Opetussuunnitelmamme perustuu kahteen keskeiseen pedagogiseen periaatteeseen: +Opetussuunnitelmamme on suunniteltu kahden keskeisen pedagogisen periaatteen mukaisesti: * projektipohjainen oppiminen -* usein toistuvat kyselyt +* toistuvat kyselyt -Ohjelma opettaa JavaScriptin, HTML:n ja CSS:n perusteet sekä uusimmat työkalut ja tekniikat, joita nykyajan verkkokehittäjät käyttävät. Opiskelijat saavat mahdollisuuden hankkia käytännön kokemusta rakentamalla kirjoituspelin, virtuaalisen terrariumin, ympäristöystävällisen selainlaajennuksen, avaruuspelin ja yrityksille suunnatun pankkisovelluksen. Sarjan lopussa opiskelijoilla on vankka ymmärrys verkkokehityksestä. +Ohjelma opettaa JavaScriptin, HTML:n ja CSS:n perusteet sekä uusimmat työkalut ja tekniikat, joita nykypäivän verkkokehittäjät käyttävät. Opiskelijat saavat käytännön kokemusta rakentamalla kirjoituspelin, virtuaalisen terraarion, ympäristöystävällisen selainlaajennuksen, avaruusinvader-tyylisen pelin ja yrityksille suunnatun pankkisovelluksen. Sarjan lopussa opiskelijoilla on vankka ymmärrys verkkokehityksestä. -> 🎓 Voit käydä tämän opetussuunnitelman ensimmäiset oppitunnit [Learn Path](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) -kurssina Microsoft Learn -sivustolla! +> 🎓 Voit suorittaa tämän opetussuunnitelman ensimmäiset oppitunnit [Learn Path](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) -kurssina Microsoft Learnissa! -Varmistamalla, että sisältö liittyy projekteihin, prosessista tehdään opiskelijoille kiinnostavampi ja käsitteiden omaksuminen paranee. Kirjoitimme myös useita JavaScriptin perusteisiin liittyviä aloitusoppitunteja käsitteiden esittelemiseksi, ja ne on yhdistetty videoon "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" -videotutoriaalikokoelmasta, jonka jotkut tämän opetussuunnitelman kirjoittajat ovat tehneet. +Varmistamalla, että sisältö liittyy projekteihin, prosessi on opiskelijoille kiinnostavampi ja käsitteiden muistaminen paranee. Kirjoitimme myös useita JavaScriptin perusteisiin liittyviä aloitusoppitunteja käsitteiden esittelemiseksi, yhdistettynä videoon "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" -videotutoriaalikokoelmasta, joiden tekijät osallistuivat tämän opetussuunnitelman laatimiseen. -Lisäksi matalan kynnyksen kysely ennen oppituntia ohjaa opiskelijan huomion aiheen oppimiseen, kun taas toinen kysely oppitunnin jälkeen varmistaa käsitteiden paremman omaksumisen. Tämä opetussuunnitelma on suunniteltu joustavaksi ja hauskaksi, ja sen voi käydä kokonaan tai osittain. Projektit alkavat pienistä ja muuttuvat yhä monimutkaisemmiksi 12 viikon jakson loppuun mennessä. +Lisäksi matalan kynnyksen kysely ennen oppituntia suuntaa opiskelijan huomion aiheen oppimiseen, kun taas toinen kysely oppitunnin jälkeen varmistaa paremman muistamisen. Tämä opetussuunnitelma on suunniteltu joustavaksi ja hauskaksi, ja sen voi suorittaa kokonaan tai osittain. Projektit alkavat pienistä ja muuttuvat yhä monimutkaisemmiksi 12 viikon jakson loppuun mennessä. -Vaikka olemme tarkoituksella välttäneet JavaScript-kehysten esittelyä keskittyäksemme verkkokehittäjän tarvitsemiin perustaitoihin ennen kehysten käyttöönottoa, hyvä seuraava askel tämän opetussuunnitelman suorittamisen jälkeen olisi oppia Node.js:stä toisen videokokoelman avulla: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)". +Vaikka olemme tarkoituksella välttäneet JavaScript-kehysten esittelyä keskittyäksemme verkkokehittäjänä tarvittaviin perustaitoihin ennen kehysten käyttöönottoa, hyvä seuraava askel tämän opetussuunnitelman suorittamisen jälkeen olisi oppia Node.js:stä toisen videosarjan kautta: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)". -> Tutustu [Code of Conduct](CODE_OF_CONDUCT.md) ja [Contributing](CONTRIBUTING.md) -ohjeisiimme. Otamme mielellämme vastaan rakentavaa palautetta! +> Tutustu [käytännesääntöihimme](CODE_OF_CONDUCT.md) ja [ohjeisiin osallistumiseen](CONTRIBUTING.md). Otamme mielellämme vastaan rakentavaa palautettasi! ## 🧭 Offline-käyttö -Voit käyttää tätä dokumentaatiota offline-tilassa [Docsify](https://docsify.js.org/#/) avulla. Haaroita tämä repo, [asenna Docsify](https://docsify.js.org/#/quickstart) paikalliselle koneellesi ja kirjoita sitten tämän repon juurikansiossa `docsify serve`. Verkkosivusto palvelee portissa 3000 paikallisessa koneessasi: `localhost:3000`. +Voit käyttää tätä dokumentaatiota offline-tilassa käyttämällä [Docsify](https://docsify.js.org/#/). Haarauta tämä repo, [asenna Docsify](https://docsify.js.org/#/quickstart) paikalliselle koneellesi ja kirjoita tämän repon juurikansiossa `docsify serve`. Verkkosivusto palvelee portissa 3000 localhostissasi: `localhost:3000`. ## 📘 PDF -PDF kaikista oppitunneista löytyy [täältä](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf). +Kaikkien oppituntien PDF löytyy [täältä](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf). ## 🎒 Muut kurssit @@ -226,7 +222,7 @@ Tiimimme tuottaa myös muita kursseja! Tutustu: --- -### Perusopetus +### Keskeiset oppimateriaalit [![ML aloittelijoille](https://img.shields.io/badge/ML%20aloittelijoille-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst) [![Data-analytiikka aloittelijoille](https://img.shields.io/badge/Data-analytiikka%20aloittelijoille-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst) [![Tekoäly aloittelijoille](https://img.shields.io/badge/Tekoäly%20aloittelijoille-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst) @@ -245,19 +241,21 @@ Tiimimme tuottaa myös muita kursseja! Tutustu: ## Apua saatavilla -Jos jäät jumiin tai sinulla on kysyttävää tekoälysovellusten rakentamisesta, liity: +Jos jäät jumiin tai sinulla on kysymyksiä tekoälysovellusten rakentamisesta, liity muiden oppijoiden ja kokeneiden kehittäjien keskusteluihin MCP:stä. Se on tukevainen yhteisö, jossa kysymykset ovat tervetulleita ja tietoa jaetaan avoimesti. -[![Azure AI Foundry Discord](https://img.shields.io/badge/Discord-Azure_AI_Foundry_Community_Discord-blue?style=for-the-badge&logo=discord&color=5865f2&logoColor=fff)](https://aka.ms/foundry/discord) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) -Jos sinulla on tuotepalautetta tai kohtaat virheitä rakentaessasi, vieraile: +Jos sinulla on tuotepalautetta tai virheitä rakentamisen aikana, vieraile: -[![Azure AI Foundry Developer Forum](https://img.shields.io/badge/GitHub-Azure_AI_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) +[![Microsoft Foundry Developer Forum](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) ## Lisenssi -Tämä arkisto on lisensoitu MIT-lisenssillä. Katso [LICENSE](../../LICENSE) tiedosto saadaksesi lisätietoja. +Tämä arkisto on lisensoitu MIT-lisenssillä. Katso [LICENSE](../../LICENSE) tiedosto saadaksesi lisätietoja. --- + **Vastuuvapauslauseke**: -Tämä asiakirja on käännetty käyttämällä tekoälypohjaista käännöspalvelua [Co-op Translator](https://github.com/Azure/co-op-translator). Vaikka pyrimme tarkkuuteen, huomioithan, että automaattiset käännökset voivat sisältää virheitä tai epätarkkuuksia. Alkuperäinen asiakirja sen alkuperäisellä kielellä tulisi pitää ensisijaisena lähteenä. Kriittisen tiedon osalta suositellaan ammattimaista ihmiskäännöstä. Emme ole vastuussa väärinkäsityksistä tai virhetulkinnoista, jotka johtuvat tämän käännöksen käytöstä. \ No newline at end of file +Tämä asiakirja on käännetty käyttämällä tekoälypohjaista käännöspalvelua [Co-op Translator](https://github.com/Azure/co-op-translator). Vaikka pyrimme tarkkuuteen, huomioithan, että automaattiset käännökset voivat sisältää virheitä tai epätarkkuuksia. Alkuperäinen asiakirja sen alkuperäisellä kielellä tulisi pitää ensisijaisena lähteenä. Kriittisen tiedon osalta suositellaan ammattimaista ihmiskäännöstä. Emme ole vastuussa väärinkäsityksistä tai virhetulkinnoista, jotka johtuvat tämän käännöksen käytöstä. + \ No newline at end of file diff --git a/translations/he/1-getting-started-lessons/2-github-basics/README.md b/translations/he/1-getting-started-lessons/2-github-basics/README.md index 4eced2c8..8a0805f5 100644 --- a/translations/he/1-getting-started-lessons/2-github-basics/README.md +++ b/translations/he/1-getting-started-lessons/2-github-basics/README.md @@ -1,81 +1,80 @@ # מבוא ל-GitHub -היי, מפתח עתידי! 👋 מוכן להצטרף למיליוני מתכנתים ברחבי העולם? אני באמת מתרגש להכיר לך את GitHub – תחשוב על זה כמו רשת חברתית למתכנתים, רק שבמקום לשתף תמונות של ארוחת הצהריים שלך, אנחנו משתפים קוד ובונים דברים מדהימים יחד! +היי, מפתח עתידי! 👋 מוכן להצטרף למיליוני מתכנתים ברחבי העולם? אני באמת מתרגש להכיר לך את GitHub – תחשוב על זה כמו רשת חברתית למתכנתים, אבל במקום לשתף תמונות של ארוחת הצהריים שלך, אנחנו משתפים קוד ובונים דברים מדהימים יחד! -הנה מה שמדהים אותי: כל אפליקציה בטלפון שלך, כל אתר שאתה מבקר בו, ורוב הכלים שתלמד להשתמש בהם נבנו על ידי צוותי מפתחים ששיתפו פעולה בפלטפורמות כמו GitHub. האפליקציה המוזיקלית שאתה אוהב? מישהו כמוך תרם לה. המשחק שאתה לא יכול להפסיק לשחק? כן, כנראה נבנה בשיתוף פעולה ב-GitHub. ועכשיו אתה הולך ללמוד איך להיות חלק מהקהילה המדהימה הזו! +הנה מה שמדהים אותי: כל אפליקציה בטלפון שלך, כל אתר שאתה מבקר בו, ורוב הכלים שתלמד להשתמש בהם נבנו על ידי צוותי מפתחים ששיתפו פעולה בפלטפורמות כמו GitHub. האפליקציה למוזיקה שאתה אוהב? מישהו כמוך תרם לה. המשחק שאתה לא יכול להפסיק לשחק? כן, כנראה נבנה עם שיתוף פעולה ב-GitHub. ועכשיו אתה הולך ללמוד איך להיות חלק מהקהילה המדהימה הזו! -אני יודע שזה אולי מרגיש קצת הרבה בהתחלה – אני זוכר את הפעם הראשונה שעמדתי מול עמוד GitHub ותהיתי "מה כל זה אומר בכלל?" אבל הנה העניין: כל מפתח התחיל בדיוק מהמקום שבו אתה נמצא עכשיו. בסוף השיעור הזה, יהיה לך מאגר GitHub משלך (תחשוב על זה כמו תצוגת הפרויקטים האישית שלך בענן), ותדע איך לשמור את העבודה שלך, לשתף אותה עם אחרים ואפילו לתרום לפרויקטים שמיליוני אנשים משתמשים בהם. +אני יודע שזה עשוי להרגיש קצת הרבה בהתחלה – אני זוכר את עצמי בוהה בדף GitHub הראשון שלי וחושב "מה זה כל זה?". אבל הנה העניין: כל מפתח התחיל בדיוק מהמקום שבו אתה נמצא עכשיו. בסוף השיעור הזה, יהיה לך מאגר GitHub משלך (תחשוב על זה כמו תצוגת הפרויקטים האישית שלך בענן), ותדע איך לשמור את העבודה שלך, לשתף אותה עם אחרים ואפילו לתרום לפרויקטים שמיליוני אנשים משתמשים בהם. -אנחנו נעבור את המסע הזה יחד, צעד אחר צעד. בלי לחץ, בלי למהר – רק אתה, אני, וכמה כלים ממש מגניבים שעומדים להפוך לחברים הכי טובים שלך! +אנחנו הולכים לעבור את המסע הזה יחד, צעד אחר צעד. בלי למהר, בלי לחץ – רק אתה, אני, וכמה כלים מגניבים שהולכים להפוך לחברים הכי טובים שלך! ![מבוא ל-GitHub](../../../../translated_images/webdev101-github.8846d7971abef6f947909b4f9d343e2a23778aa716ca6b9d71df7174ee5009ac.he.png) > איור מאת [Tomomi Imura](https://twitter.com/girlie_mac) ```mermaid journey - title Your GitHub Adventure Today - section Setup - Install Git: 4: You - Create Account: 5: You - First Repository: 5: You - section Master Git - Local Changes: 4: You - Commits & Pushes: 5: You - Branching: 4: You - section Collaborate - Fork Projects: 4: You - Pull Requests: 5: You - Open Source: 5: You + title ההרפתקה שלך בגיטהאב היום + section התקנה + התקן גיט: 4: אתה + צור חשבון: 5: אתה + מאגר ראשון: 5: אתה + section שלוט בגיט + שינויים מקומיים: 4: אתה + קומיטים ודחיפות: 5: אתה + הסתעפות: 4: אתה + section שתף פעולה + פרויקטים ממוזגים: 4: אתה + בקשות משיכה: 5: אתה + קוד פתוח: 5: אתה ``` - -## שאלון לפני השיעור -[שאלון לפני השיעור](https://ff-quizzes.netlify.app) +## חידון לפני השיעור +[חידון לפני השיעור](https://ff-quizzes.netlify.app) ## מבוא -לפני שנצלול לדברים המרגשים באמת, בואו נכין את המחשב שלכם לקצת קסם של GitHub! תחשבו על זה כמו לארגן את ציוד האמנות שלכם לפני יצירת יצירת מופת – כשיש את הכלים הנכונים הכל הרבה יותר חלק ומהנה. +לפני שנצלול לדברים המרגשים באמת, בואו נכין את המחשב שלכם לקצת קסם של GitHub! תחשבו על זה כמו לארגן את ציוד האמנות שלכם לפני יצירת יצירת מופת – כשיש לכם את הכלים הנכונים, הכל הופך לחלק ומהנה הרבה יותר. -אני אעבור איתכם על כל שלב בהגדרה באופן אישי, ואני מבטיח שזה לא נראה כל כך מפחיד כמו שזה נראה במבט ראשון. אם משהו לא מובן מיד, זה לגמרי נורמלי! אני זוכר את הפעם הראשונה שהגדרתי את סביבת הפיתוח שלי והרגשתי כאילו אני מנסה לקרוא הירוגליפים עתיקים. כל מפתח היה בדיוק במקום שבו אתם נמצאים עכשיו, תוהים אם הם עושים את זה נכון. ספוילר: אם אתם כאן ולומדים, אתם כבר עושים את זה נכון! 🌟 +אני הולך להדריך אתכם בכל שלב של ההגדרה באופן אישי, ואני מבטיח שזה לא מפחיד כמו שזה נראה במבט ראשון. אם משהו לא מובן מיד, זה לגמרי נורמלי! אני זוכר את הפעם הראשונה שהגדרתי סביבת פיתוח והרגשתי כאילו אני מנסה לקרוא הירוגליפים עתיקים. כל מפתח היה בדיוק במקום שבו אתם נמצאים עכשיו, תוהים אם הם עושים את זה נכון. ספוילר: אם אתם כאן ולומדים, אתם כבר עושים את זה נכון! 🌟 -בשיעור הזה, נלמד: +בשיעור הזה נלמד: -- איך לעקוב אחרי העבודה שאתם עושים במחשב שלכם -- איך לעבוד על פרויקטים עם אחרים +- לעקוב אחרי העבודה שאתם עושים במחשב שלכם +- לעבוד על פרויקטים עם אחרים - איך לתרום לתוכנה בקוד פתוח -### דרישות מקדימות +### דרישות מוקדמות -בואו נכין את המחשב שלכם לקצת קסם של GitHub! אל תדאגו – ההגדרה הזו היא משהו שצריך לעשות רק פעם אחת, ואז תהיו מוכנים לכל מסע הקידוד שלכם. +בואו נכין את המחשב שלכם לקצת קסם של GitHub! אל תדאגו – ההגדרה הזו היא משהו שתצטרכו לעשות רק פעם אחת, ואז תהיו מוכנים לכל מסע הקידוד שלכם. -טוב, בואו נתחיל עם הבסיס! קודם כל, אנחנו צריכים לבדוק אם Git כבר נמצא במחשב שלכם. Git הוא בעצם כמו עוזר סופר-חכם שזוכר כל שינוי שאתם עושים בקוד שלכם – הרבה יותר טוב מללחוץ Ctrl+S כל שתי שניות (כולנו היינו שם!). +בסדר, בואו נתחיל עם הבסיס! קודם כל, אנחנו צריכים לבדוק אם Git כבר מותקן במחשב שלכם. Git הוא בעצם כמו עוזר חכם במיוחד שזוכר כל שינוי שאתם עושים בקוד שלכם – הרבה יותר טוב מלהכות Ctrl+S כל שתי שניות (כולנו היינו שם!). -בואו נראה אם Git כבר מותקן על ידי הקלדת הפקודה הזו בטרמינל שלכם: +בואו נראה אם Git כבר מותקן על ידי הקלדת הפקודה הקסומה הזו בטרמינל שלכם: `git --version` -אם Git עדיין לא שם, אין בעיה! פשוט לכו ל-[הורדת Git](https://git-scm.com/downloads) ותורידו אותו. אחרי שהתקנתם אותו, אנחנו צריכים להציג את Git לכם כמו שצריך: +אם Git עדיין לא מותקן, אין בעיה! פשוט גשו ל-[הורדת Git](https://git-scm.com/downloads) והורידו אותו. לאחר שהתקנתם אותו, אנחנו צריכים להציג את Git בפניכם כמו שצריך: -> 💡 **הגדרה ראשונה**: הפקודות האלה אומרות ל-Git מי אתם. המידע הזה יצורף לכל commit שאתם עושים, אז בחרו שם ואימייל שאתם מרגישים בנוח לשתף בפומבי. +> 💡 **הגדרה ראשונית**: הפקודות האלו אומרות ל-Git מי אתם. המידע הזה יצורף לכל commit שתעשו, אז בחרו שם ואימייל שאתם מרגישים בנוח לשתף בפומבי. ```bash git config --global user.name "your-name" git config --global user.email "your-email" ``` -כדי לבדוק אם Git כבר מוגדר, אתם יכולים להקליד: +כדי לבדוק אם Git כבר מוגדר, תוכלו להקליד: ```bash git config --list ``` -תצטרכו גם חשבון GitHub, עורך קוד (כמו Visual Studio Code), ותצטרכו לפתוח את הטרמינל שלכם (או: command prompt). +תצטרכו גם חשבון GitHub, עורך קוד (כמו Visual Studio Code), ותצטרכו לפתוח את הטרמינל שלכם (או: שורת הפקודה). גשו ל-[github.com](https://github.com/) וצרו חשבון אם עדיין אין לכם, או התחברו ומלאו את הפרופיל שלכם. @@ -85,117 +84,116 @@ git config --list ### הכנה -תצטרכו גם תיקייה עם פרויקט קוד במחשב המקומי שלכם (לפטופ או PC), וגם מאגר ציבורי ב-GitHub, שישמש כדוגמה לאיך לתרום לפרויקטים של אחרים. +תצטרכו גם תיקייה עם פרויקט קוד במחשב המקומי שלכם (מחשב נייד או PC), וגם מאגר ציבורי ב-GitHub, שישמש כדוגמה לאיך לתרום לפרויקטים של אחרים. ### שמירה על הקוד שלכם בטוח -בואו נדבר רגע על אבטחה – אבל אל תדאגו, אנחנו לא הולכים להעמיס עליכם דברים מפחידים! תחשבו על הפרקטיקות האלו כמו לנעול את הרכב או הבית שלכם. אלו הרגלים פשוטים שהופכים לטבע שני ושומרים על העבודה הקשה שלכם. +בואו נדבר רגע על אבטחה – אבל אל תדאגו, אנחנו לא הולכים להעמיס עליכם דברים מפחידים! תחשבו על הפרקטיקות האלו כמו לנעול את הרכב או הבית שלכם. אלו הרגלים פשוטים שהופכים לטבע שני ושומרים על העבודה הקשה שלכם מוגנת. -נראה לכם את הדרכים המודרניות והבטוחות לעבוד עם GitHub מההתחלה. כך תפתחו הרגלים טובים שישרתו אתכם היטב לאורך הקריירה שלכם כמתכנתים. +נראה לכם את הדרכים המודרניות והמאובטחות לעבוד עם GitHub מההתחלה. כך, תפתחו הרגלים טובים שישרתו אתכם לאורך כל הקריירה שלכם כמתכנתים. -כשעובדים עם GitHub, חשוב לעקוב אחרי פרקטיקות אבטחה מומלצות: +כשעובדים עם GitHub, חשוב לעקוב אחרי פרקטיקות האבטחה הטובות ביותר: | תחום אבטחה | פרקטיקה מומלצת | למה זה חשוב | |-------------|----------------|--------------| -| **אימות** | השתמשו במפתחות SSH או ב-Personal Access Tokens | סיסמאות פחות בטוחות ונמצאות בתהליך הסרה | -| **אימות דו-שלבי** | הפעילו 2FA בחשבון GitHub שלכם | מוסיף שכבת הגנה נוספת לחשבון | +| **אימות** | השתמשו במפתחות SSH או Personal Access Tokens | סיסמאות פחות מאובטחות ונמצאות בתהליך הסרה | +| **אימות דו-שלבי** | הפעילו 2FA בחשבון ה-GitHub שלכם | מוסיף שכבת הגנה נוספת לחשבון | | **אבטחת מאגר** | לעולם אל תתחייבו מידע רגיש | מפתחות API וסיסמאות לא צריכים להיות במאגרים ציבוריים | -| **ניהול תלות** | הפעילו Dependabot לעדכונים | שומר על התלויות שלכם בטוחות ומעודכנות | +| **ניהול תלות** | הפעילו Dependabot לעדכונים | שומר על התלויות שלכם מאובטחות ומעודכנות | -> ⚠️ **תזכורת אבטחה קריטית**: לעולם אל תתחייבו מפתחות API, סיסמאות או מידע רגיש אחר לשום מאגר. השתמשו במשתני סביבה ובקבצי `.gitignore` כדי להגן על מידע רגיש. +> ⚠️ **תזכורת אבטחה קריטית**: לעולם אל תתחייבו מפתחות API, סיסמאות או מידע רגיש אחר לשום מאגר. השתמשו במשתני סביבה ובקבצי `.gitignore` כדי להגן על נתונים רגישים. **הגדרת אימות מודרנית:** ```bash -# Generate SSH key (modern ed25519 algorithm) +# צור מפתח SSH (אלגוריתם ed25519 מודרני) ssh-keygen -t ed25519 -C "your_email@example.com" -# Set up Git to use SSH +# הגדר את Git לשימוש ב-SSH git remote set-url origin git@github.com:username/repository.git ``` -> 💡 **טיפ מקצועי**: מפתחות SSH מבטלים את הצורך להקליד סיסמאות שוב ושוב והם בטוחים יותר משיטות אימות מסורתיות. +> 💡 **טיפ מקצועי**: מפתחות SSH מבטלים את הצורך להקליד סיסמאות שוב ושוב והם מאובטחים יותר משיטות אימות מסורתיות. --- ## ניהול הקוד שלכם כמו מקצוענים -טוב, כאן הדברים באמת מתחילים להיות מרגשים! 🎉 אנחנו עומדים ללמוד איך לעקוב ולנהל את הקוד שלכם כמו מקצוענים, ובכנות, זה אחד הדברים האהובים עליי ללמד כי זה משנה את כללי המשחק. +אוקיי, כאן הדברים באמת מתחילים להיות מרגשים! 🎉 אנחנו עומדים ללמוד איך לעקוב ולנהל את הקוד שלכם כמו מקצוענים, ובכנות, זה אחד הדברים האהובים עליי ללמד כי זה משנה את כללי המשחק. -תארו לעצמכם: אתם כותבים סיפור מדהים, ואתם רוצים לעקוב אחרי כל טיוטה, כל עריכה מבריקה, וכל רגע של "וואו, זה גאוני!" לאורך הדרך. זה בדיוק מה ש-Git עושה עבור הקוד שלכם! זה כמו מחברת מסע בזמן מדהימה שזוכרת הכל – כל הקשה, כל שינוי, כל רגע של "אופס, זה הרס הכל" שאפשר מיד לבטל. +תארו לעצמכם: אתם כותבים סיפור מדהים, ואתם רוצים לעקוב אחרי כל טיוטה, כל עריכה מבריקה וכל "רגע של גאונות" לאורך הדרך. זה בדיוק מה ש-Git עושה עבור הקוד שלכם! זה כמו מחברת מסע בזמן מדהימה שזוכרת הכל – כל הקשה, כל שינוי, כל "אופס, זה שבר הכל" שאפשר לבטל מיד. -אני אהיה כנה – זה אולי מרגיש קצת מרתיע בהתחלה. כשאני התחלתי, חשבתי "למה אני לא יכול פשוט לשמור את הקבצים שלי כמו רגיל?" אבל תאמינו לי: ברגע ש-Git יתחבר לכם (וזה יקרה!), תהיה לכם אחת מאותן רגעי הארה שבהם תחשבו "איך אי פעם קודדתי בלי זה?" זה כמו לגלות שאתם יכולים לעוף אחרי שהלכתם לכל מקום כל החיים! +אני אהיה כנה – זה עשוי להרגיש קצת מבלבל בהתחלה. כשאני התחלתי, חשבתי "למה אני לא יכול פשוט לשמור את הקבצים שלי כמו תמיד?" אבל תאמינו לי: ברגע ש-Git יתחבר לכם (וזה יקרה!), יהיה לכם רגע של "איך אי פעם קודדתי בלי זה?" זה כמו לגלות שאתם יכולים לעוף אחרי שהלכתם כל החיים. -נניח שיש לכם תיקייה מקומית עם פרויקט קוד ואתם רוצים להתחיל לעקוב אחרי ההתקדמות שלכם באמצעות git - מערכת ניהול גרסאות. יש אנשים שמשווים שימוש ב-git לכתיבת מכתב אהבה לעצמכם בעתיד. קריאת הודעות ה-commit שלכם ימים, שבועות או חודשים לאחר מכן תאפשר לכם להיזכר למה קיבלתם החלטה מסוימת, או "לחזור אחורה" בשינוי – כלומר, כשאתם כותבים הודעות commit טובות. +נניח שיש לכם תיקייה מקומית עם פרויקט קוד ואתם רוצים להתחיל לעקוב אחרי ההתקדמות שלכם באמצעות git - מערכת ניהול גרסאות. יש אנשים שמשווים שימוש ב-git לכתיבת מכתב אהבה לעצמכם בעתיד. קריאת הודעות ה-commit שלכם ימים, שבועות או חודשים מאוחר יותר תאפשר לכם להיזכר למה קיבלתם החלטה מסוימת, או "לחזור אחורה" לשינוי – כלומר, כשאתם כותבים הודעות commit טובות. ```mermaid flowchart TD - A[📁 Your Project Files] --> B{Is it a Git Repository?} - B -->|No| C[git init] - B -->|Yes| D[Make Changes] + A[📁 קבצי הפרויקט שלך] --> B{האם זה מאגר Git?} + B -->|לא| C[git init] + B -->|כן| D[בצע שינויים] C --> D D --> E[git add .] - E --> F["git commit -m 'message'"] + E --> F["git commit -m 'הודעה'"] F --> G[git push] - G --> H[🌟 Code on GitHub!] + G --> H[🌟 קוד ב-GitHub!] - H --> I{Want to collaborate?} - I -->|Yes| J[Fork & Clone] - I -->|No| D - J --> K[Create Branch] - K --> L[Make Changes] - L --> M[Pull Request] - M --> N[🎉 Contributing!] + H --> I{רוצה לשתף פעולה?} + I -->|כן| J[פיצול ושכפול] + I -->|לא| D + J --> K[צור ענף] + K --> L[בצע שינויים] + L --> M[בקשת משיכה] + M --> N[🎉 תורם!] style A fill:#fff59d style H fill:#c8e6c9 style N fill:#ff4081,color:#fff ``` - ### משימה: צרו את המאגר הראשון שלכם! -> 🎯 **המשימה שלכם (ואני כל כך מתרגש בשבילכם!)**: אנחנו הולכים ליצור יחד את מאגר GitHub הראשון שלכם! עד סוף התהליך, יהיה לכם פינה קטנה משלכם באינטרנט שבה הקוד שלכם יישמר, ותעשו את ה-commit הראשון שלכם (זה אומר לשמור את העבודה שלכם בצורה חכמה). +> 🎯 **המשימה שלכם (ואני כל כך מתרגש בשבילכם!)**: אנחנו הולכים ליצור יחד את מאגר ה-GitHub הראשון שלכם! עד שנסיים כאן, יהיה לכם פינה קטנה באינטרנט שבה הקוד שלכם יגור, ותעשו את ה-"commit" הראשון שלכם (זה אומר לשמור את העבודה שלכם בצורה חכמה במיוחד). > -> זה באמת רגע מיוחד – אתם עומדים להצטרף באופן רשמי לקהילת המפתחים העולמית! אני עדיין זוכר את ההתרגשות של יצירת המאגר הראשון שלי וחשבתי "וואו, אני באמת עושה את זה!" +> זה באמת רגע מיוחד – אתם עומדים להצטרף רשמית לקהילה הגלובלית של מפתחים! אני עדיין זוכר את ההתרגשות של יצירת המאגר הראשון שלי וחשבתי "וואו, אני באמת עושה את זה!" -בואו נעבור את ההרפתקה הזו יחד, צעד אחר צעד. קחו את הזמן עם כל חלק – אין פרס על למהר, ואני מבטיח שכל שלב יתחבר. זכרו, כל כוכב קידוד שאתם מעריצים היה פעם בדיוק במקום שבו אתם נמצאים עכשיו, עומד ליצור את המאגר הראשון שלו. כמה זה מגניב? +בואו נעבור את ההרפתקה הזו יחד, צעד אחר צעד. קחו את הזמן עם כל חלק – אין פרס למהר, ואני מבטיח שכל שלב יתחבר. זכרו, כל כוכב קידוד שאתם מעריצים היה פעם בדיוק במקום שבו אתם נמצאים, עומד ליצור את המאגר הראשון שלו. כמה מגניב זה? > צפו בסרטון > -> [![סרטון יסודות Git ו-GitHub](https://img.youtube.com/vi/9R31OUPpxU4/0.jpg)](https://www.youtube.com/watch?v=9R31OUPpxU4) +> [![Git and GitHub basics video](https://img.youtube.com/vi/9R31OUPpxU4/0.jpg)](https://www.youtube.com/watch?v=9R31OUPpxU4) **בואו נעשה את זה יחד:** -1. **צרו את המאגר שלכם ב-GitHub**. גשו ל-GitHub.com וחפשו את הכפתור הירוק **New** (או את הסימן **+** בפינה הימנית העליונה). לחצו עליו ובחרו **New repository**. +1. **צרו את המאגר שלכם ב-GitHub**. גשו ל-GitHub.com וחפשו את הכפתור הירוק הבולט **New** (או את הסימן **+** בפינה הימנית העליונה). לחצו עליו ובחרו **New repository**. הנה מה לעשות: - 1. תנו למאגר שלכם שם – שיהיה משהו משמעותי עבורכם! + 1. תנו למאגר שלכם שם – משהו משמעותי עבורכם! 1. הוסיפו תיאור אם תרצו (זה עוזר לאחרים להבין על מה הפרויקט שלכם) - 1. החליטו אם אתם רוצים שהוא יהיה ציבורי (שכולם יוכלו לראות אותו) או פרטי (רק בשבילכם) + 1. החליטו אם אתם רוצים שהוא יהיה ציבורי (כולם יכולים לראות אותו) או פרטי (רק עבורכם) 1. אני ממליץ לסמן את התיבה להוספת קובץ README – זה כמו דף הבית של הפרויקט שלכם - 1. לחצו **Create repository** וחגגו – הרגע יצרתם את המאגר הראשון שלכם! 🎉 + 1. לחצו על **Create repository** וחגגו – הרגע יצרתם את המאגר הראשון שלכם! 🎉 -2. **גשו לתיקיית הפרויקט שלכם**. עכשיו בואו נפתח את הטרמינל שלכם (אל תדאגו, זה לא מפחיד כמו שזה נראה!). אנחנו צריכים להגיד למחשב שלכם איפה נמצאים קבצי הפרויקט שלכם. הקלידו את הפקודה הזו: +2. **נווטו לתיקיית הפרויקט שלכם**. עכשיו בואו נפתח את הטרמינל שלכם (אל תדאגו, זה לא מפחיד כמו שזה נראה!). אנחנו צריכים לומר למחשב שלכם איפה נמצאים קבצי הפרויקט שלכם. הקלידו את הפקודה הזו: ```bash cd [name of your folder] ``` **מה אנחנו עושים כאן:** - - אנחנו בעצם אומרים למחשב "היי, קח אותי לתיקיית הפרויקט שלי" - - זה כמו לפתוח תיקייה ספציפית בשולחן העבודה שלכם, אבל אנחנו עושים את זה עם פקודות טקסט - - החליפו את `[name of your folder]` בשם האמיתי של תיקיית הפרויקט שלכם + - אנחנו בעצם אומרים "היי מחשב, קח אותי לתיקיית הפרויקט שלי" + - זה כמו לפתוח תיקייה מסוימת על שולחן העבודה שלכם, אבל אנחנו עושים את זה עם פקודות טקסט + - החליפו `[name of your folder]` בשם האמיתי של תיקיית הפרויקט שלכם -3. **הפכו את התיקייה שלכם למאגר Git**. כאן הקסם מתחיל! הקלידו: +3. **הפכו את התיקייה שלכם למאגר Git**. כאן הקסם קורה! הקלידו: ```bash git init ``` **הנה מה שקרה עכשיו (דברים די מגניבים!):** - - Git יצר תיקייה מוסתרת בשם `.git` בפרויקט שלכם – אתם לא תראו אותה, אבל היא שם! - - התיקייה הרגילה שלכם היא עכשיו "מאגר" שיכול לעקוב אחרי כל שינוי שאתם עושים - - תחשבו על זה כמו לתת לתיקייה שלכם כוחות-על לזכור הכל + - Git יצר תיקייה מוסתרת `.git` בפרויקט שלכם – אתם לא תראו אותה, אבל היא שם! + - התיקייה הרגילה שלכם היא עכשיו "מאגר" שיכול לעקוב אחרי כל שינוי שתעשו + - תחשבו על זה כמו לתת לתיקייה שלכם כוחות על לזכור הכל 4. **בדקו מה קורה**. בואו נראה מה Git חושב על הפרויקט שלכם כרגע: @@ -218,10 +216,10 @@ flowchart TD **אל תיבהלו! הנה מה שזה אומר:** - קבצים ב**אדום** הם קבצים שיש בהם שינויים אבל הם עדיין לא מוכנים לשמירה - - קבצים ב**ירוק** (כשאתם רואים אותם) מוכנים לשמירה - - Git עוזר לכם על ידי כך שהוא אומר לכם בדיוק מה אתם יכולים לעשות הלאה + - קבצים ב**ירוק** (כשתראו אותם) מוכנים לשמירה + - Git עוזר בכך שהוא אומר לכם בדיוק מה תוכלו לעשות הלאה - > 💡 **טיפ מקצועי**: הפקודה `git status` היא החברה הכי טובה שלכם! השתמשו בה בכל פעם שאתם מבולבלים לגבי מה שקורה. זה כמו לשאול את Git "היי, מה המצב כרגע?" + > 💡 **טיפ מקצועי**: הפקודה `git status` היא החברה הכי טובה שלכם! השתמשו בה בכל פעם שאתם מבולבלים לגבי מה קורה. זה כמו לשאול את Git "היי, מה המצב כרגע?" 5. **הכינו את הקבצים שלכם לשמירה** (זה נקרא "staging"): @@ -231,456 +229,454 @@ flowchart TD **מה שעשינו עכשיו:** - אמרנו ל-Git "היי, אני רוצה לכלול את כל הקבצים שלי בשמירה הבאה" - - ה-`.` זה כמו להגיד "הכל בתיקייה הזו" - - עכשיו הקבצים שלכם "מוכנים לשמירה" ומוכנים לשלב הבא + - הנקודה `.` היא כמו לומר "הכל בתיקייה הזו" + - עכשיו הקבצים שלכם "מוכנים" לשלב הבא - **רוצים להיות יותר סלקטיביים?** אתם יכולים להוסיף רק קבצים ספציפיים: + **רוצים להיות יותר סלקטיביים?** תוכלו להוסיף רק קבצים מסוימים: ```bash git add [file or folder name] ``` **למה שתרצו לעשות את זה?** - - לפעמים אתם רוצים לשמור שינויים קשורים יחד - - זה עוזר לכם לארגן את העבודה שלכם לקטעים הגיוניים - - מקל להבין מה השתנה ומתי + - לפעמים תרצו לשמור שינויים קשורים יחד + - זה עוזר לכם לארגן את העבודה שלכם לקטעים לוגיים + - מקל על הבנת מה השתנה ומתי - **שיניתם את דעתכם?** אין בעיה! אתם יכולים להסיר קבצים מהשלב הזה כך: + **שיניתם את דעתכם?** אין בעיה! תוכלו להסיר קבצים מהשלב כך: ```bash - # Unstage everything + # בטל שלב הכל git reset - # Unstage just one file + # בטל שלב רק קובץ אחד git reset [file name] ``` - אל דאגה – זה לא מוחק את העבודה שלכם, זה רק מוציא קבצים מה"ערימה המוכנה לשמירה". + אל תדאגו – זה לא מוחק את העבודה שלכם, זה רק מוציא קבצים מה"ערימה המוכנה לשמירה". -6. **שמרו את העבודה שלכם באופן קבוע** (עשו את ה-commit הראשון שלכם!): +6. **שמרו את העבודה שלכם לצמיתות** (עשו את ה-commit הראשון שלכם!): ```bash git commit -m "first commit" ``` - **🎉 מזל טוב! עשיתם את ה-commit הראשון שלכם!** + **🎉 מזל טוב! הרגע עשיתם את ה-commit הראשון שלכם!** **הנה מה שקרה עכשיו:** - - Git לקח "תמונת מצב" של כל הקבצים המוכנים בשלב הזה + - Git לקח "תמונת מצב" של כל הקבצים שהיו מוכנים בשלב הזה - הודעת ה-commit שלכם "first commit" מסבירה על מה נקודת השמירה הזו - - Git נתן לתמונת המצב הזו מזהה ייחודי כך שתמיד תוכלו למצוא אותה + - Git נתן לתמונת המצב הזו מזהה ייחודי כך שתוכלו תמיד למצוא אותה מאוחר יותר - התחלתם רשמית לעקוב אחרי ההיסטוריה של הפרויקט שלכם! - > 💡 **הודעות commit עתידיות**: ל-commits הבאים שלכם, היו יותר תיאוריים! במקום "updated stuff", נסו "Add contact form to homepage" או "Fix navigation menu bug". העצמי העתידי שלכם יודה לכם! + > 💡 **הודעות commit עתידיות**: עבור ה-commits הבאים שלכם, היו יותר תיאוריים! במקום "עדכון דברים", נסו "הוספת טופס יצירת קשר לדף הבית" או "תיקון באג בתפריט הניווט". עצמכם בעתיד יודה לכם! -7. **חברו את הפרויקט המקומי שלכם ל-GitHub**. כרגע, הפרויקט שלכם קיים רק במחשב שלכם. בואו נחבר אותו למאגר GitHub שלכם כדי שתוכלו לשתף אותו עם העולם! +7. **חברו את הפרויקט המקומי שלכם ל-GitHub**. כרגע, הפרויקט שלכם קיים רק במחשב שלכם. בואו נחבר אותו למאגר ה-GitHub שלכם כדי שתוכלו לשתף אותו עם העולם! - קודם כל, גשו לעמוד המאגר שלכם ב-GitHub והעתיקו את ה-URL. ואז חזרו לכאן והקלידו: + קודם, גשו לדף המאגר שלכם ב-GitHub והעתיקו את ה-URL. לאחר מכן חזרו לכאן והקלידו: ```bash git remote add origin https://github.com/username/repository_name.git ``` (החליפו את ה-URL הזה ב-URL האמיתי של המאגר שלכם!) -**מה שעשינו עכשיו:** -- יצרנו חיבור בין הפרויקט המקומי שלך לבין מאגר ה-GitHub שלך. -- "Origin" הוא רק כינוי למאגר ה-GitHub שלך – זה כמו להוסיף איש קשר לטלפון שלך. -- עכשיו ה-Git המקומי שלך יודע לאן לשלוח את הקוד שלך כשאתה מוכן לשתף אותו. -💡 **דרך קלה יותר**: אם התקנת את GitHub CLI, תוכל לעשות זאת בפקודה אחת: + **מה שעשינו עכשיו:** + - יצרנו חיבור בין הפרויקט המקומי שלך לבין מאגר ה-GitHub שלך + - "Origin" הוא רק כינוי למאגר ה-GitHub שלך – זה כמו להוסיף איש קשר לטלפון שלך + - עכשיו Git המקומי שלך יודע לאן לשלוח את הקוד שלך כשאתה מוכן לשתף אותו + + 💡 **דרך קלה יותר**: אם התקנת את GitHub CLI, תוכל לעשות זאת בפקודה אחת: ```bash gh repo create my-repo --public --push --source=. ``` - -8. **שלח את הקוד שלך ל-GitHub** (הרגע הגדול!): + +8. **שלח את הקוד שלך ל-GitHub** (הרגע הגדול!): ```bash git push -u origin main ``` + + **🚀 זהו זה! אתה מעלה את הקוד שלך ל-GitHub!** -**🚀 זהו זה! אתה מעלה את הקוד שלך ל-GitHub!** - -**מה קורה כאן:** -- הקומיטים שלך עוברים מהמחשב שלך ל-GitHub. -- הדגל `-u` יוצר חיבור קבוע כך שהעלאות עתידיות יהיו קלות יותר. -- "main" הוא שם הענף הראשי שלך (כמו התיקייה הראשית). -- אחרי זה, תוכל פשוט להקליד `git push` להעלאות עתידיות! + **מה קורה כאן:** + - הקומיטים שלך עוברים מהמחשב שלך ל-GitHub + - הדגל `-u` יוצר חיבור קבוע כך שהעלאות עתידיות יהיו קלות יותר + - "main" הוא שם הענף הראשי שלך (כמו התיקייה הראשית) + - אחרי זה, תוכל פשוט להקליד `git push` להעלאות עתידיות! -💡 **הערה מהירה**: אם הענף שלך נקרא בשם אחר (כמו "master"), השתמש בשם הזה. תוכל לבדוק עם `git branch --show-current`. + 💡 **הערה מהירה**: אם הענף שלך נקרא בשם אחר (כמו "master"), השתמש בשם הזה. תוכל לבדוק זאת עם `git branch --show-current`. -9. **קצב העבודה היומי החדש שלך** (כאן זה מתחיל להיות ממכר!): +9. **קצב העבודה היומי החדש שלך** (כאן זה מתחיל להיות ממכר!): -מעכשיו, בכל פעם שתבצע שינויים בפרויקט שלך, יש לך את הריקוד הפשוט הזה בשלושה שלבים: + מעכשיו, בכל פעם שתבצע שינויים בפרויקט שלך, יש לך את הריקוד הפשוט הזה בשלושה שלבים: ```bash git add . git commit -m "describe what you changed" git push ``` + + **זה הופך לדופק הקידוד שלך:** + - בצע שינויים מדהימים בקוד שלך ✨ + - שלב אותם עם `git add` ("היי Git, שים לב לשינויים האלה!") + - שמור אותם עם `git commit` והודעה תיאורית (העתיד שלך יודה לך!) + - שתף אותם עם העולם באמצעות `git push` 🚀 + - חזור על התהליך – ברצינות, זה הופך לטבעי כמו לנשום! -**זה הופך להיות פעימת הלב של הקידוד שלך:** -- בצע שינויים מדהימים בקוד שלך ✨ -- שלב אותם עם `git add` ("היי Git, שים לב לשינויים האלה!") -- שמור אותם עם `git commit` והוסף הודעה תיאורית (העתיד שלך יודה לך!) -- שתף אותם עם העולם באמצעות `git push` 🚀 -- חזור על הפעולה – ברצינות, זה הופך להיות טבעי כמו לנשום! - -אני אוהב את זרימת העבודה הזו כי זה כמו שיש נקודות שמירה מרובות במשחק וידאו. ביצעת שינוי שאתה אוהב? תבצע קומיט! רוצה לנסות משהו מסוכן? אין בעיה – תמיד תוכל לחזור לקומיט האחרון אם הדברים משתבשים! + אני אוהב את זרימת העבודה הזו כי זה כמו שיש לך נקודות שמירה מרובות במשחק וידאו. עשית שינוי שאתה אוהב? תבצע קומיט! רוצה לנסות משהו מסוכן? אין בעיה – תמיד תוכל לחזור לקומיט האחרון אם הדברים משתבשים! -> 💡 **טיפ**: אולי תרצה גם לאמץ קובץ `.gitignore` כדי למנוע קבצים שאתה לא רוצה לעקוב אחריהם מלהופיע ב-GitHub - כמו קובץ הערות שאתה שומר באותה תיקייה אבל אין לו מקום במאגר ציבורי. תוכל למצוא תבניות לקבצי `.gitignore` ב-[.gitignore templates](https://github.com/github/gitignore) או ליצור אחד באמצעות [gitignore.io](https://www.toptal.com/developers/gitignore). + > 💡 **טיפ**: ייתכן שתרצה גם לאמץ קובץ `.gitignore` כדי למנוע מקבצים שאתה לא רוצה לעקוב אחריהם להופיע ב-GitHub - כמו קובץ הערות שאתה שומר באותה תיקייה אבל אין לו מקום במאגר ציבורי. תוכל למצוא תבניות לקבצי `.gitignore` ב-[.gitignore templates](https://github.com/github/gitignore) או ליצור אחד באמצעות [gitignore.io](https://www.toptal.com/developers/gitignore). -### 🧠 **בדיקת מאגר ראשון: איך זה הרגיש?** +### 🧠 **בדיקת מאגר ראשון: איך זה הרגיש?** -**קח רגע לחגוג ולהרהר:** -- איך הרגיש לראות את הקוד שלך מופיע ב-GitHub בפעם הראשונה? -- איזה שלב היה הכי מבלבל, ואיזה היה מפתיע קל? -- האם תוכל להסביר את ההבדל בין `git add`, `git commit`, ו-`git push` במילים שלך? +**קח רגע לחגוג ולהרהר:** +- איך הרגשת כשראית את הקוד שלך מופיע ב-GitHub בפעם הראשונה? +- איזה שלב היה הכי מבלבל, ואיזה היה מפתיע בקלות שלו? +- האם תוכל להסביר במילים שלך את ההבדל בין `git add`, `git commit`, ו-`git push`? ```mermaid stateDiagram-v2 - [*] --> LocalFiles: Create project + [*] --> LocalFiles: יצירת פרויקט LocalFiles --> Staged: git add . Staged --> Committed: git commit Committed --> GitHub: git push - GitHub --> [*]: Success! 🎉 + GitHub --> [*]: הצלחה! 🎉 note right of Staged - Files ready to save + קבצים מוכנים לשמירה end note note right of Committed - Snapshot created + תמונת מצב נוצרה end note -``` - -> **זכור**: אפילו מפתחים מנוסים לפעמים שוכחים את הפקודות המדויקות. הפיכת זרימת העבודה הזו לזיכרון שריר דורשת תרגול - אתה עושה עבודה נהדרת! +``` +> **זכור**: אפילו מפתחים מנוסים לפעמים שוכחים את הפקודות המדויקות. הפיכת זרימת העבודה הזו לזיכרון שריר דורשת תרגול - אתה עושה עבודה נהדרת! -#### זרימות עבודה מודרניות ב-Git +#### זרימות עבודה מודרניות ב-Git -שקול לאמץ את הפרקטיקות המודרניות הבאות: +שקול לאמץ את השיטות המודרניות הבאות: -- **קומיטים קונבנציונליים**: השתמש בפורמט הודעת קומיט סטנדרטי כמו `feat:`, `fix:`, `docs:` וכו'. למד עוד ב-[conventionalcommits.org](https://www.conventionalcommits.org/) -- **קומיטים אטומיים**: הפוך כל קומיט לייצג שינוי לוגי יחיד. -- **קומיטים תכופים**: בצע קומיטים לעיתים קרובות עם הודעות תיאוריות במקום קומיטים גדולים ונדירים. +- **קומיטים קונבנציונליים**: השתמש בפורמט הודעות קומיט סטנדרטי כמו `feat:`, `fix:`, `docs:` וכו'. למד עוד ב-[conventionalcommits.org](https://www.conventionalcommits.org/) +- **קומיטים אטומיים**: הפוך כל קומיט לייצג שינוי לוגי יחיד +- **קומיטים תכופים**: בצע קומיטים לעיתים קרובות עם הודעות תיאוריות במקום קומיטים גדולים ולא תכופים -#### הודעות קומיט +#### הודעות קומיט -שורת נושא מצוינת להודעת קומיט משלימה את המשפט הבא: -אם ייושם, הקומיט הזה י<שורת הנושא שלך כאן> +שורת נושא מצוינת להודעת קומיט משלימה את המשפט הבא: +אם ייושם, הקומיט הזה <שורת הנושא שלך כאן> -לשורת הנושא השתמש בצורת ציווי, זמן הווה: "שנה" ולא "שינה" או "משנה". -כמו בשורת הנושא, גם בגוף (אופציונלי) השתמש בצורת ציווי, זמן הווה. הגוף צריך לכלול את המוטיבציה לשינוי ולהשוות זאת להתנהגות הקודמת. אתה מסביר את ה`למה`, לא את ה`איך`. +לנושא השתמש בזמן הווה, ציווי: "שנה" ולא "שינה" או "משנה". +כמו בנושא, גם בגוף (אופציונלי) השתמש בזמן הווה, ציווי. הגוף צריך לכלול את המוטיבציה לשינוי ולהשוות זאת להתנהגות הקודמת. אתה מסביר את ה"למה", לא את ה"איך". -✅ קח כמה דקות לגלוש ב-GitHub. האם תוכל למצוא הודעת קומיט ממש טובה? האם תוכל למצוא אחת מינימלית מאוד? איזה מידע לדעתך הכי חשוב ומועיל להעביר בהודעת קומיט? +✅ קח כמה דקות לגלוש ב-GitHub. האם תוכל למצוא הודעת קומיט ממש טובה? האם תוכל למצוא אחת מינימלית במיוחד? איזה מידע לדעתך הכי חשוב ושימושי להעביר בהודעת קומיט? -## עבודה עם אחרים (החלק הכיפי!) +## עבודה עם אחרים (החלק הכיפי!) -תחזיק חזק כי כאן GitHub הופך להיות קסום לחלוטין! 🪄 כבר שלטת בניהול הקוד שלך, אבל עכשיו אנחנו צוללים לחלק האהוב עליי – שיתוף פעולה עם אנשים מדהימים מכל העולם. +תחזיק חזק כי כאן GitHub הופך להיות קסום לחלוטין! 🪄 למדת לנהל את הקוד שלך, אבל עכשיו אנחנו צוללים לחלק האהוב עליי – שיתוף פעולה עם אנשים מדהימים מכל רחבי העולם. -תאר לעצמך: אתה מתעורר מחר ורואה שמישהו בטוקיו שיפר את הקוד שלך בזמן שישנת. ואז מישהו בברלין מתקן באג שנתקעת עליו. עד הצהריים, מפתח בסאו פאולו הוסיף תכונה שמעולם לא חשבת עליה. זה לא מדע בדיוני – זה פשוט יום שלישי ביקום של GitHub! +תאר לעצמך: אתה מתעורר מחר ורואה שמישהו בטוקיו שיפר את הקוד שלך בזמן שישנת. אחר כך מישהו בברלין מתקן באג שנתקעת עליו. ובצהריים, מפתח בסאו פאולו מוסיף תכונה שלא חשבת עליה בכלל. זה לא מדע בדיוני – זה פשוט יום שלישי ביקום של GitHub! -מה שמרגש אותי באמת הוא שהכישורים לשיתוף פעולה שאתה עומד ללמוד? אלו בדיוק אותן זרימות עבודה שצוותים בגוגל, מיקרוסופט והסטארטאפים האהובים עליך משתמשים בהם כל יום. אתה לא רק לומד כלי מגניב – אתה לומד את השפה הסודית שמאפשרת לעולם התוכנה כולו לעבוד יחד. +מה שמרגש אותי באמת הוא שהכישורים לשיתוף פעולה שאתה עומד ללמוד? אלה בדיוק אותן זרימות עבודה שצוותים בגוגל, מיקרוסופט, והסטארטאפים האהובים עליך משתמשים בהן כל יום. אתה לא רק לומד כלי מגניב – אתה לומד את השפה הסודית שמאפשרת לעולם התוכנה כולו לעבוד יחד. -ברצינות, ברגע שתחווה את ההתרגשות של מישהו שממזג את בקשת המשיכה הראשונה שלך, תבין למה מפתחים כל כך נלהבים לגבי קוד פתוח. זה כמו להיות חלק מפרויקט הצוות הכי גדול והכי יצירתי בעולם! +ברצינות, ברגע שתחווה את ההתרגשות של מישהו שממזג את בקשת המשיכה הראשונה שלך, תבין למה מפתחים כל כך נלהבים לגבי קוד פתוח. זה כמו להיות חלק מפרויקט הצוות הכי גדול והכי יצירתי בעולם! -> צפה בסרטון +> צפה בסרטון > -> [![Git and GitHub basics video](https://img.youtube.com/vi/bFCM-PC3cu8/0.jpg)](https://www.youtube.com/watch?v=bFCM-PC3cu8) +> [![Git and GitHub basics video](https://img.youtube.com/vi/bFCM-PC3cu8/0.jpg)](https://www.youtube.com/watch?v=bFCM-PC3cu8) -הסיבה העיקרית לשים דברים ב-GitHub הייתה לאפשר שיתוף פעולה עם מפתחים אחרים. +הסיבה העיקרית להעלות דברים ל-GitHub הייתה לאפשר שיתוף פעולה עם מפתחים אחרים. ```mermaid flowchart LR - A[🔍 Find Project] --> B[🍴 Fork Repository] - B --> C[📥 Clone to Local] - C --> D[🌿 Create Branch] - D --> E[✏️ Make Changes] - E --> F[💾 Commit Changes] - F --> G[📤 Push Branch] - G --> H[🔄 Create Pull Request] - H --> I{Maintainer Review} - I -->|✅ Approved| J[🎉 Merge!] - I -->|❓ Changes Requested| K[📝 Make Updates] + A[🔍 מצא פרויקט] --> B[🍴 פצל מאגר] + B --> C[📥 שיבט למקומי] + C --> D[🌿 צור ענף] + D --> E[✏️ בצע שינויים] + E --> F[💾 בצע התחייבות] + F --> G[📤 דחוף ענף] + G --> H[🔄 צור בקשת משיכה] + H --> I{סקירת מנהל} + I -->|✅ מאושר| J[🎉 מיזוג!] + I -->|❓ נדרשים שינויים| K[📝 בצע עדכונים] K --> F - J --> L[🧹 Clean Up Branches] + J --> L[🧹 נקה ענפים] style A fill:#e3f2fd style J fill:#e8f5e8 style L fill:#fff3e0 -``` +``` +במאגר שלך, נווט ל-`Insights > Community` כדי לראות איך הפרויקט שלך משתווה לסטנדרטים הקהילתיים המומלצים. -במאגר שלך, נווט ל-`Insights > Community` כדי לראות איך הפרויקט שלך משתווה לסטנדרטים קהילתיים מומלצים. +רוצה שהמאגר שלך ייראה מקצועי ומזמין? עבור למאגר שלך ולחץ על `Insights > Community`. התכונה המגניבה הזו מראה לך איך הפרויקט שלך משתווה למה שהקהילה של GitHub מחשיבה כ"פרקטיקות מאגר טובות". -רוצה להפוך את המאגר שלך למקצועי ומזמין? עבור למאגר שלך ולחץ על `Insights > Community`. התכונה המגניבה הזו מראה לך איך הפרויקט שלך משתווה למה שקהילת GitHub מחשיבה כ"פרקטיקות מאגר טובות". +> 🎯 **להבריק את הפרויקט שלך**: מאגר מאורגן היטב עם תיעוד טוב הוא כמו חנות מסודרת ומזמינה. זה מראה לאנשים שאכפת לך מהעבודה שלך וגורם לאחרים לרצות לתרום! -> 🎯 **להפוך את הפרויקט שלך למבריק**: מאגר מאורגן היטב עם תיעוד טוב הוא כמו חנות נקייה ומזמינה. זה מראה לאנשים שאתה משקיע בעבודה שלך וגורם לאחרים לרצות לתרום! +**הנה מה שהופך מאגר למדהים:** -**הנה מה שהופך מאגר למדהים:** +| מה להוסיף | למה זה חשוב | מה זה עושה עבורך | +|-------------|-------------------|---------------------| +| **תיאור** | רושם ראשוני חשוב! | אנשים יודעים מיד מה הפרויקט שלך עושה | +| **README** | דף הבית של הפרויקט שלך | כמו מדריך ידידותי למבקרים חדשים | +| **הנחיות לתרומה** | מראה שאתה מקבל עזרה | אנשים יודעים בדיוק איך הם יכולים לעזור לך | +| **קוד התנהגות** | יוצר מרחב ידידותי | כולם מרגישים מוזמנים להשתתף | +| **רישיון** | בהירות משפטית | אחרים יודעים איך הם יכולים להשתמש בקוד שלך | +| **מדיניות אבטחה** | מראה שאתה אחראי | מדגים פרקטיקות מקצועיות | -| מה להוסיף | למה זה חשוב | מה זה עושה בשבילך | -|------------|-------------|--------------------| -| **תיאור** | רושם ראשוני חשוב! | אנשים יודעים מיד מה הפרויקט שלך עושה | -| **README** | דף הבית של הפרויקט שלך | כמו מדריך ידידותי למבקרים חדשים | -| **הנחיות לתרומה** | מראה שאתה מקבל עזרה | אנשים יודעים בדיוק איך הם יכולים לעזור לך | -| **קוד התנהגות** | יוצר מרחב ידידותי | כולם מרגישים מוזמנים להשתתף | -| **רישיון** | בהירות משפטית | אחרים יודעים איך הם יכולים להשתמש בקוד שלך | -| **מדיניות אבטחה** | מראה שאתה אחראי | מדגים פרקטיקות מקצועיות | +> 💡 **טיפ מקצועי**: GitHub מספק תבניות לכל הקבצים האלה. כשאתה יוצר מאגר חדש, סמן את התיבות כדי ליצור אוטומטית את הקבצים האלה. -> 💡 **טיפ מקצועי**: GitHub מספק תבניות לכל הקבצים האלה. בעת יצירת מאגר חדש, סמן את התיבות כדי ליצור את הקבצים האלה באופן אוטומטי. +**תכונות מודרניות של GitHub לחקור:** -**תכונות מודרניות של GitHub לחקור:** +🤖 **אוטומציה ו-CI/CD:** +- **GitHub Actions** לבדיקות אוטומטיות ופריסה +- **Dependabot** לעדכוני תלות אוטומטיים -🤖 **אוטומציה ו-CI/CD:** -- **GitHub Actions** לבדיקות אוטומטיות ופריסה. -- **Dependabot** לעדכוני תלות אוטומטיים. +💬 **קהילה וניהול פרויקטים:** +- **GitHub Discussions** לשיחות קהילתיות מעבר לבעיות +- **GitHub Projects** לניהול פרויקטים בסגנון קאנבן +- **חוקי הגנה על ענפים** לאכיפת סטנדרטים של איכות קוד -💬 **קהילה וניהול פרויקטים:** -- **GitHub Discussions** לשיחות קהילתיות מעבר לבעיות. -- **GitHub Projects** לניהול פרויקטים בסגנון קאנבן. -- **כללי הגנה על ענפים** לאכיפת סטנדרטים של איכות קוד. +כל המשאבים האלה יועילו בהכנסת חברי צוות חדשים. ואלה בדרך כלל הדברים שתרומים חדשים מסתכלים עליהם לפני שהם בכלל מסתכלים על הקוד שלך, כדי להבין אם הפרויקט שלך הוא המקום הנכון עבורם להשקיע את זמנם. -כל המשאבים האלה יועילו בתהליך קליטת חברי צוות חדשים. ואלו בדרך כלל הדברים שהמשתתפים החדשים מסתכלים עליהם לפני שהם בכלל מסתכלים על הקוד שלך, כדי להבין אם הפרויקט שלך הוא המקום הנכון להשקיע בו את זמנם. +✅ קבצי README, למרות שלוקח זמן להכין אותם, לעיתים קרובות מוזנחים על ידי מתחזקים עסוקים. האם תוכל למצוא דוגמה לאחד שמתאר במיוחד? הערה: ישנם [כלים לעזרה ביצירת README טובים](https://www.makeareadme.com/) שאולי תרצה לנסות. -✅ קבצי README, למרות שלוקח זמן להכין אותם, לעיתים קרובות מוזנחים על ידי מנהלים עסוקים. האם תוכל למצוא דוגמה לאחד שמתאר בצורה יוצאת דופן? הערה: ישנם [כלים שעוזרים ליצור README טובים](https://www.makeareadme.com/) שאולי תרצה לנסות. +### משימה: מיזוג קוד -### משימה: מיזוג קוד +מסמכי תרומה עוזרים לאנשים לתרום לפרויקט. הם מסבירים אילו סוגי תרומות אתה מחפש ואיך התהליך עובד. תורמים יצטרכו לעבור סדרת שלבים כדי להיות מסוגלים לתרום למאגר שלך ב-GitHub: -מסמכי תרומה עוזרים לאנשים לתרום לפרויקט. הם מסבירים אילו סוגי תרומות אתה מחפש ואיך התהליך עובד. משתתפים יצטרכו לעבור סדרת שלבים כדי להיות מסוגלים לתרום למאגר שלך ב-GitHub: +1. **פיצול המאגר שלך** כנראה תרצה שאנשים _יפצלו_ את הפרויקט שלך. פיצול משמעו יצירת עותק של המאגר שלך בפרופיל ה-GitHub שלהם. +1. **שכפול**. משם הם ישכפלו את הפרויקט למחשב המקומי שלהם. +1. **יצירת ענף**. תרצה לבקש מהם ליצור _ענף_ עבור העבודה שלהם. +1. **מיקוד השינוי שלהם לאזור אחד**. בקש מהתורמים להתרכז בתרומות שלהם בדבר אחד בכל פעם - כך הסיכויים שתוכל _למזג_ את העבודה שלהם גבוהים יותר. תאר לעצמך שהם כותבים תיקון באג, מוסיפים תכונה חדשה, ומעדכנים כמה בדיקות - מה אם תרצה, או תוכל ליישם רק 2 מתוך 3, או 1 מתוך 3 שינויים? -1. **פיצול המאגר שלך**. כנראה שתרצה שאנשים _יפצלו_ את הפרויקט שלך. פיצול אומר יצירת עותק של המאגר בפרופיל ה-GitHub שלהם. -1. **שכפול**. משם הם ישכפלו את הפרויקט למחשב המקומי שלהם. -1. **יצירת ענף**. תרצה לבקש מהם ליצור _ענף_ עבור העבודה שלהם. -1. **מיקוד השינוי שלהם באזור אחד**. בקש מהמשתתפים להתרכז בתרומות שלהם בדבר אחד בכל פעם - כך הסיכויים שתוכל _למזג_ את העבודה שלהם גבוהים יותר. תאר לעצמך שהם כותבים תיקון באג, מוסיפים תכונה חדשה ומעדכנים כמה בדיקות - מה אם אתה רוצה, או יכול ליישם רק 2 מתוך 3, או 1 מתוך 3 שינויים? +✅ דמיין מצב שבו ענפים הם קריטיים במיוחד לכתיבה ושחרור קוד טוב. אילו מקרים אתה יכול לחשוב עליהם? -✅ דמיין מצב שבו ענפים הם קריטיים במיוחד לכתיבה ולשחרור קוד טוב. אילו מקרי שימוש אתה יכול לחשוב עליהם? +> הערה, היה השינוי שאתה רוצה לראות בעולם, וצור ענפים גם עבור העבודה שלך. כל קומיט שתבצע ייעשה על הענף שאתה כרגע "נמצא בו". השתמש ב-`git status` כדי לראות באיזה ענף אתה נמצא. -> הערה, היה השינוי שאתה רוצה לראות בעולם, וצור ענפים גם עבור העבודה שלך. כל הקומיטים שתבצע ייעשו על הענף שבו אתה "נמצא". השתמש ב-`git status` כדי לראות באיזה ענף אתה נמצא. +בוא נעבור על זרימת עבודה של תורם. נניח שהתורם כבר _פיצל_ ו_שכפל_ את המאגר כך שיש לו מאגר Git מוכן לעבודה על המחשב המקומי שלו: -בוא נעבור על זרימת עבודה של משתתף. נניח שהמשתתף כבר _פיצל_ ו_שכפל_ את המאגר כך שיש לו מאגר Git מוכן לעבודה על המחשב המקומי שלו: - -1. **יצירת ענף**. השתמש בפקודה `git branch` כדי ליצור ענף שיכיל את השינויים שהם מתכוונים לתרום: +1. **יצירת ענף**. השתמש בפקודה `git branch` כדי ליצור ענף שיכיל את השינויים שהם מתכוונים לתרום: ```bash git branch [branch-name] ``` - - > 💡 **גישה מודרנית**: תוכל גם ליצור ולעבור לענף החדש בפקודה אחת: + + > 💡 **גישה מודרנית**: תוכל גם ליצור ולעבור לענף החדש בפקודה אחת: ```bash git switch -c [branch-name] ``` - -1. **מעבר לענף העבודה**. עבור לענף שצוין ועדכן את ספריית העבודה עם `git switch`: + +1. **מעבר לענף העבודה**. עבור לענף שצוין ועדכן את ספריית העבודה עם `git switch`: ```bash git switch [branch-name] ``` + + > 💡 **הערה מודרנית**: `git switch` הוא התחליף המודרני ל-`git checkout` כשמשנים ענפים. זה ברור ובטוח יותר למתחילים. - > 💡 **הערה מודרנית**: `git switch` הוא החלופה המודרנית ל-`git checkout` בעת מעבר בין ענפים. זה ברור ובטוח יותר למתחילים. - -1. **בצע עבודה**. בשלב זה תרצה להוסיף את השינויים שלך. אל תשכח להודיע ל-Git על כך עם הפקודות הבאות: +1. **בצע עבודה**. בשלב זה תרצה להוסיף את השינויים שלך. אל תשכח להודיע ל-Git על כך עם הפקודות הבאות: ```bash git add . git commit -m "my changes" ``` + + > ⚠️ **איכות הודעת קומיט**: ודא שאתה נותן לקומיט שלך שם טוב, גם בשבילך וגם בשביל מתחזק המאגר שאתה עוזר לו. היה ספציפי לגבי מה ששינית! - > ⚠️ **איכות הודעת קומיט**: ודא שאתה נותן לקומיט שלך שם טוב, גם בשבילך וגם בשביל מנהל המאגר שאתה עוזר לו. היה ספציפי לגבי מה ששינית! - -1. **שילוב העבודה שלך עם ענף ה-`main`**. בשלב מסוים סיימת לעבוד ואתה רוצה לשלב את העבודה שלך עם זו של ענף ה-`main`. ייתכן שענף ה-`main` השתנה בינתיים, אז ודא שאתה מעדכן אותו לגרסה האחרונה עם הפקודות הבאות: +1. **שלב את העבודה שלך עם הענף `main`**. בשלב מסוים סיימת לעבוד ואתה רוצה לשלב את העבודה שלך עם זו של הענף `main`. ייתכן שהענף `main` השתנה בינתיים, אז ודא שאתה מעדכן אותו לגרסה האחרונה עם הפקודות הבאות: ```bash git switch main git pull ``` - - בשלב זה תרצה לוודא שכל _קונפליקטים_, מצבים שבהם Git לא יכול _לשלב_ את השינויים בקלות, מתרחשים בענף העבודה שלך. לכן, הרץ את הפקודות הבאות: + + בשלב זה תרצה לוודא שכל _התנגשויות_, מצבים שבהם ל-Git קשה _לשלב_ את השינויים, קורים בענף העבודה שלך. לכן הרץ את הפקודות הבאות: ```bash git switch [branch_name] git merge main ``` + + הפקודה `git merge main` תביא את כל השינויים מהענף `main` לענף שלך. בתקווה תוכל פשוט להמשיך. אם לא, VS Code יראה לך היכן Git _מבולבל_ ותוכל לשנות את הקבצים המושפעים כדי לציין איזה תוכן הוא המדויק ביותר. - הפקודה `git merge main` תביא את כל השינויים מ-main לתוך הענף שלך. בתקווה תוכל פשוט להמשיך. אם לא, VS Code יראה לך איפה Git _מבולבל_ ואתה פשוט תשנה את הקבצים המושפעים כדי לציין איזה תוכן הוא הכי מדויק. - - 💡 **חלופה מודרנית**: שקול להשתמש ב-`git rebase` להיסטוריה נקייה יותר: + 💡 **חלופה מודרנית**: שקול להשתמש ב-`git rebase` להיסטוריה נקייה יותר: ```bash git rebase main ``` - זה משחזר את הקומיטים שלך על גבי ענף ה-main האחרון, ויוצר היסטוריה לינארית. + + זה משחזר את הקומיטים שלך על גבי הענף `main` האחרון, ויוצר היסטוריה ליניארית. -1. **שלח את העבודה שלך ל-GitHub**. שליחת העבודה שלך ל-GitHub אומרת שני דברים. דחיפת הענף שלך למאגר שלך ואז פתיחת PR, Pull Request. +1. **שלח את העבודה שלך ל-GitHub**. שליחת העבודה שלך ל-GitHub משמעה שני דברים. דחיפת הענף שלך למאגר שלך ואז פתיחת PR, בקשת משיכה. ```bash git push --set-upstream origin [branch-name] ``` + + הפקודה לעיל יוצרת את הענף במאגר המפוצל שלך. - הפקודה לעיל יוצרת את הענף במאגר המפוצל שלך. - -### 🤝 **בדיקת מיומנויות שיתוף פעולה: מוכן לעבוד עם אחרים?** +### 🤝 **בדיקת מיומנויות שיתוף פעולה: מוכן לעבוד עם אחרים?** -**בוא נראה איך אתה מרגיש לגבי שיתוף פעולה:** -- האם הרעיון של פיצול ובקשות משיכה הגיוני לך עכשיו? -- מהו דבר אחד לגבי עבודה עם ענפים שאתה רוצה לתרגל יותר? -- כמה נוח לך לתרום לפרויקט של מישהו אחר? +**בוא נראה איך אתה מרגיש לגבי שיתוף פעולה:** +- האם הרעיון של פיצול ובקשות משיכה הגיוני לך עכשיו? +- מהו דבר אחד לגבי עבודה עם ענפים שאתה רוצה לתרגל יותר? +- עד כמה אתה מרגיש בנוח לתרום לפרויקט של מישהו אחר? ```mermaid mindmap - root((Git Collaboration)) + root((שיתוף פעולה ב-Git)) Branching - Feature branches - Bug fix branches - Experimental work + סניפי פיצ'רים + סניפי תיקון באגים + עבודה ניסיונית Pull Requests - Code review - Discussion - Testing + סקירת קוד + דיון + בדיקות Best Practices - Clear commit messages - Small focused changes - Good documentation -``` - -> **מגביר ביטחון**: כל מפתח שאתה מעריץ היה פעם לחוץ לגבי בקשת המשיכה הראשונה שלו. קהילת GitHub מאוד מקבלת פנים למתחילים! + הודעות קומיט ברורות + שינויים קטנים וממוקדים + תיעוד טוב +``` +> **מגביר ביטחון**: כל מפתח שאתה מעריץ היה פעם לחוץ לגבי בקשת המשיכה הראשונה שלו. הקהילה של GitHub מאוד מקבלת פנים לחדשים! -1. **פתח PR**. לאחר מכן, תרצה לפתוח PR. אתה עושה זאת על ידי ניווט למאגר המפוצל ב-GitHub. תראה אינדיקציה ב-GitHub שבה הוא שואל אם אתה רוצה ליצור PR חדש, תלחץ על זה ותועבר לממשק שבו תוכל לשנות את כותרת הודעת הקומיט, לתת לה תיאור מתאים יותר. עכשיו מנהל המאגר שפיצלת יראה את ה-PR הזה ו_בתקווה_ הוא יעריך ו_ימזג_ את ה-PR שלך. עכשיו אתה משתתף, יאי :) +1. **פתח PR**. לאחר מכן, תרצה לפתוח PR. תעשה זאת על ידי ניווט למאגר המפוצל ב-GitHub. תראה אינדיקציה ב-GitHub ששואלת אם אתה רוצה ליצור PR חדש, תלחץ על זה ותועבר לממשק שבו תוכל לשנות את כותרת הודעת הקומיט, לתת לה תיאור מתאים יותר. עכשיו מתחזק המאגר שפיצלת יראה את ה-PR הזה ו_בתקווה_ יעריך ו_ימזג_ את ה-PR שלך. עכשיו אתה תורם, יאיי :) - 💡 **טיפ מודרני**: תוכל גם ליצור PRs באמצעות GitHub CLI: + 💡 **טיפ מודרני**: תוכל גם ליצור PRs באמצעות GitHub CLI: ```bash gh pr create --title "Your PR title" --body "Description of changes" ``` - - 🔧 **פרקטיקות מומלצות ל-PRs**: - - קישור לבעיות קשורות באמצעות מילות מפתח כמו "Fixes #123". - - הוספת צילומי מסך לשינויים בממשק המשתמש. - - בקשת סוקרים ספציפיים. - - שימוש ב-PRs טיוטה לעבודה בתהליך. - - ודא שכל בדיקות ה-CI עוברות לפני בקשת סקירה. -1. **ניקוי**. נחשב כמעשה טוב לנקות אחרי שממזגים בהצלחה PR. כדאי לנקות גם את הסניף המקומי וגם את הסניף שהעליתם ל-GitHub. קודם כל, נמחק אותו מקומית עם הפקודה הבאה: + + 🔧 **שיטות עבודה מומלצות ל-PRs**: + - קישור לבעיות קשורות באמצעות מילות מפתח כמו "Fixes #123" + - הוספת צילומי מסך לשינויים בממשק המשתמש + - בקשת סוקרים ספציפיים + - שימוש ב-PRs בטיוטה לעבודה בתהליך + - ודא שכל בדיקות ה-CI עוברות לפני בקשת סקירה +1. **ניקוי**. נחשב כפרקטיקה טובה _לנקות_ אחרי שמיזגת בהצלחה PR. אתה רוצה לנקות גם את הסניף המקומי שלך וגם את הסניף שדחפת ל-GitHub. קודם כל, בוא נמחק אותו מקומית עם הפקודה הבאה: ```bash git branch -d [branch-name] ``` -לאחר מכן, גשו לדף GitHub של הריפו המפוצל והסירו את הסניף המרוחק שהעליתם אליו. +וודא שאתה נכנס לדף GitHub של הריפו המפוצל ומסיר את הסניף המרוחק שדחפת אליו. -`Pull request` נשמע כמו מונח מוזר כי בעצם אתם רוצים לדחוף את השינויים שלכם לפרויקט. אבל המתחזק (בעל הפרויקט) או צוות הליבה צריכים לשקול את השינויים שלכם לפני שממזגים אותם עם הסניף "הראשי" של הפרויקט, כך שבעצם אתם מבקשים החלטת שינוי מהמתחזק. +`Pull request` נשמע כמו מונח מוזר כי בעצם אתה רוצה לדחוף את השינויים שלך לפרויקט. אבל המתחזק (בעל הפרויקט) או צוות הליבה צריכים לשקול את השינויים שלך לפני שהם ממזגים אותם עם הסניף "הראשי" של הפרויקט, אז בעצם אתה מבקש החלטת שינוי ממתחזק. -Pull request הוא המקום להשוות ולדון בהבדלים שהוכנסו בסניף עם ביקורות, תגובות, בדיקות משולבות ועוד. Pull request טוב עוקב פחות או יותר אחרי אותם כללים כמו הודעת commit. ניתן להוסיף התייחסות לבעיה במעקב הבעיות, למשל כאשר העבודה שלכם פותרת בעיה מסוימת. עושים זאת באמצעות `#` ואחריו מספר הבעיה שלכם. לדוגמה `#97`. +Pull request הוא המקום להשוות ולדון בהבדלים שהוכנסו בסניף עם ביקורות, תגובות, בדיקות משולבות ועוד. Pull request טוב עוקב פחות או יותר אחרי אותם כללים כמו הודעת commit. אתה יכול להוסיף הפניה לבעיה ב-tracker של בעיות, למשל כאשר העבודה שלך פותרת בעיה. זה נעשה באמצעות `#` ואחריו מספר הבעיה שלך. לדוגמה `#97`. -🤞אצבעות משולבות שכל הבדיקות יעברו ובעלי הפרויקט ימזגו את השינויים שלכם לפרויקט🤞 +🤞מחזיקים אצבעות שכל הבדיקות עוברות ובעלי הפרויקט ממזגים את השינויים שלך לפרויקט🤞 -עדכנו את הסניף המקומי הנוכחי שלכם עם כל ה-commits החדשים מהסניף המרוחק המתאים ב-GitHub: +עדכן את הסניף המקומי הנוכחי שלך עם כל ה-commits החדשים מהסניף המרוחק המתאים ב-GitHub: `git pull` -## תרומה לקוד פתוח (ההזדמנות שלכם לעשות שינוי!) +## לתרום לקוד פתוח (ההזדמנות שלך לעשות שינוי!) -מוכנים למשהו שיפיל לכם את הלסת? 🤯 בואו נדבר על תרומה לפרויקטים של קוד פתוח – ואני מתרגש רק מלחשוב על לשתף את זה איתכם! +מוכן למשהו שיפיל לך את הלסת? 🤯 בוא נדבר על תרומה לפרויקטים של קוד פתוח – ואני מתרגש רק מלחשוב על לשתף את זה איתך! -זו ההזדמנות שלכם להיות חלק ממשהו באמת יוצא דופן. תארו לעצמכם שאתם משפרים את הכלים שמיליוני מפתחים משתמשים בהם כל יום, או מתקנים באג באפליקציה שחברים שלכם אוהבים. זה לא רק חלום – זה בדיוק מה שתרומה לקוד פתוח מאפשרת! +זו ההזדמנות שלך להיות חלק ממשהו באמת יוצא דופן. תאר לעצמך לשפר את הכלים שמיליוני מפתחים משתמשים בהם כל יום, או לתקן באג באפליקציה שחברים שלך אוהבים. זה לא רק חלום – זה בדיוק מה שתרומה לקוד פתוח עוסקת בו! -הנה מה שמרגש אותי כל פעם שאני חושב על זה: כל כלי שאתם לומדים להשתמש בו – עורך הקוד שלכם, המסגרות שנחקור, אפילו הדפדפן שבו אתם קוראים את זה – התחיל עם מישהו בדיוק כמוכם שעשה את התרומה הראשונה שלו. אותו מפתח מבריק שבנה את התוסף האהוב עליכם ל-VS Code? הוא היה פעם מתחיל שלחץ על "create pull request" עם ידיים רועדות, בדיוק כמו שאתם עומדים לעשות. +הנה מה שמרגש אותי כל פעם מחדש: כל כלי שלמדת איתו – עורך הקוד שלך, המסגרות שנחקור, אפילו הדפדפן שבו אתה קורא את זה – התחיל עם מישהו בדיוק כמוך שעשה את התרומה הראשונה שלו. אותו מפתח מבריק שבנה את ההרחבה האהובה עליך ל-VS Code? הוא היה פעם מתחיל שלחץ על "create pull request" בידיים רועדות, בדיוק כמו שאתה עומד לעשות. -והנה החלק הכי יפה: קהילת הקוד הפתוח היא כמו חיבוק קבוצתי ענק של האינטרנט. רוב הפרויקטים מחפשים באופן פעיל מתחילים ויש להם בעיות מתויגות כ-"good first issue" במיוחד עבור אנשים כמוכם! המתחזקים באמת מתרגשים כשהם רואים תורמים חדשים כי הם זוכרים את הצעדים הראשונים שלהם. +והנה החלק הכי יפה: קהילת הקוד הפתוח היא כמו חיבוק קבוצתי ענק של האינטרנט. רוב הפרויקטים מחפשים באופן פעיל מתחילים ויש להם בעיות מתויגות "good first issue" במיוחד בשביל אנשים כמוך! מתחזקים באמת מתרגשים כשהם רואים תורמים חדשים כי הם זוכרים את הצעדים הראשונים שלהם. ```mermaid flowchart TD - A[🔍 Explore GitHub] --> B[🏷️ Find "good first issue"] - B --> C[📖 Read Contributing Guidelines] - C --> D[🍴 Fork Repository] - D --> E[💻 Set Up Local Environment] - E --> F[🌿 Create Feature Branch] - F --> G[✨ Make Your Contribution] - G --> H[🧪 Test Your Changes] - H --> I[📝 Write Clear Commit] - I --> J[📤 Push & Create PR] - J --> K[💬 Engage with Feedback] - K --> L[🎉 Merged! You're a Contributor!] - L --> M[🌟 Find Next Issue] + A[🔍 חקור את GitHub] --> B[🏷️ מצא "בעיה ראשונה טובה"] + B --> C[📖 קרא את הנחיות התרומה] + C --> D[🍴 עשה Fork למאגר] + D --> E[💻 הגדר סביבה מקומית] + E --> F[🌿 צור ענף פיצ'ר] + F --> G[✨ בצע את התרומה שלך] + G --> H[🧪 בדוק את השינויים שלך] + H --> I[📝 כתוב התחייבות ברורה] + I --> J[📤 דחוף וצור PR] + J --> K[💬 התמודד עם משוב] + K --> L[🎉 מוזג! אתה תורם!] + L --> M[🌟 מצא את הבעיה הבאה] style A fill:#e1f5fe style L fill:#c8e6c9 style M fill:#fff59d -``` - -אתם לא רק לומדים לתכנת כאן – אתם מתכוננים להצטרף למשפחה עולמית של בונים שמתעוררים כל יום וחושבים "איך נוכל להפוך את העולם הדיגיטלי לקצת יותר טוב?" ברוכים הבאים למועדון! 🌟 +``` +אתה לא רק לומד לקודד כאן – אתה מתכונן להצטרף למשפחה גלובלית של בונים שמתעוררים כל יום וחושבים "איך נוכל להפוך את העולם הדיגיטלי לקצת יותר טוב?" ברוך הבא למועדון! 🌟 -קודם כל, בואו נמצא ריפו ב-GitHub שמעניין אתכם ושאליו תרצו לתרום שינוי. תרצו להעתיק את התוכן שלו למחשב שלכם. +קודם כל, בוא נמצא ריפו (או **repo**) ב-GitHub שמעניין אותך ושאליו תרצה לתרום שינוי. תרצה להעתיק את התוכן שלו למחשב שלך. -✅ דרך טובה למצוא ריפואים ידידותיים למתחילים היא [לחפש לפי התג 'good-first-issue'](https://github.blog/2020-01-22-browse-good-first-issues-to-start-contributing-to-open-source/). +✅ דרך טובה למצוא ריפואים 'ידידותיים למתחילים' היא [לחפש לפי התג 'good-first-issue'](https://github.blog/2020-01-22-browse-good-first-issues-to-start-contributing-to-open-source/). ![העתקת ריפו מקומית](../../../../translated_images/clone_repo.5085c48d666ead57664f050d806e325d7f883be6838c821e08bc823ab7c66665.he.png) -יש כמה דרכים להעתיק קוד. אחת מהן היא "שכפול" התוכן של הריפו, באמצעות HTTPS, SSH, או באמצעות GitHub CLI (ממשק שורת הפקודה). +יש כמה דרכים להעתיק קוד. אחת מהן היא "לשכפל" את התוכן של הריפו, באמצעות HTTPS, SSH, או באמצעות GitHub CLI (ממשק שורת הפקודה). -פתחו את הטרמינל שלכם ושכפלו את הריפו כך: +פתח את הטרמינל שלך ושכפל את הריפו כך: ```bash -# Using HTTPS +# שימוש ב-HTTPS git clone https://github.com/ProjectURL -# Using SSH (requires SSH key setup) +# שימוש ב-SSH (דורש הגדרת מפתח SSH) git clone git@github.com:username/repository.git -# Using GitHub CLI +# שימוש ב-GitHub CLI gh repo clone username/repository ``` -כדי לעבוד על הפרויקט, עברו לתיקייה המתאימה: +כדי לעבוד על הפרויקט, עבור לתיקייה הנכונה: `cd ProjectURL` -ניתן גם לפתוח את כל הפרויקט באמצעות: +אתה יכול גם לפתוח את כל הפרויקט באמצעות: - **[GitHub Codespaces](https://github.com/features/codespaces)** - סביבת פיתוח בענן של GitHub עם VS Code בדפדפן - **[GitHub Desktop](https://desktop.github.com/)** - אפליקציית GUI לפעולות Git -- **[GitHub.dev](https://github.dev)** - לחצו על מקש `.` בכל ריפו ב-GitHub כדי לפתוח את VS Code בדפדפן -- **VS Code** עם תוסף GitHub Pull Requests +- **[GitHub.dev](https://github.dev)** - לחץ על מקש `.` בכל ריפו של GitHub כדי לפתוח את VS Code בדפדפן +- **VS Code** עם הרחבת Pull Requests של GitHub -לבסוף, ניתן להוריד את הקוד בתיקייה מכווצת. +לבסוף, אתה יכול להוריד את הקוד בתיקייה מכווצת. -### עוד כמה דברים מעניינים על GitHub +### כמה דברים מעניינים נוספים על GitHub -ניתן לככב, לעקוב ו/או "לשכפל" כל ריפו ציבורי ב-GitHub. ניתן למצוא את הריפואים שכיכבתם בתפריט הנפתח בפינה הימנית העליונה. זה כמו סימניות, אבל לקוד. +אתה יכול לככב, לצפות ו/או "למזלג" כל ריפו ציבורי ב-GitHub. תוכל למצוא את הריפואים שכיכבת בתפריט הנפתח בפינה הימנית העליונה. זה כמו סימניות, אבל לקוד. -לפרויקטים יש מעקב בעיות, לרוב ב-GitHub בלשונית "Issues" אלא אם צוין אחרת, שם אנשים דנים בבעיות הקשורות לפרויקט. ולשונית Pull Requests היא המקום שבו אנשים דנים ומבקרים שינויים שנמצאים בתהליך. +לפרויקטים יש tracker של בעיות, בדרך כלל ב-GitHub בלשונית "Issues" אלא אם צוין אחרת, שבו אנשים דנים בבעיות הקשורות לפרויקט. ולשונית Pull Requests היא המקום שבו אנשים דנים ומבקרים שינויים שנמצאים בתהליך. -ייתכן שלפרויקטים יש גם דיונים בפורומים, רשימות תפוצה או ערוצי צ'אט כמו Slack, Discord או IRC. +לפרויקטים עשויים להיות גם דיונים בפורומים, רשימות תפוצה, או ערוצי צ'אט כמו Slack, Discord או IRC. 🔧 **תכונות מודרניות של GitHub**: - **GitHub Discussions** - פורום מובנה לשיחות קהילתיות - **GitHub Sponsors** - תמיכה כספית במתחזקים -- **לשונית Security** - דיווחים על פגיעויות וייעוץ אבטחה -- **לשונית Actions** - צפייה בתהליכי עבודה אוטומטיים וצינורות CI/CD -- **לשונית Insights** - ניתוחים על תורמים, commits ובריאות הפרויקט +- **לשונית Security** - דוחות פגיעות וייעוץ אבטחה +- **לשונית Actions** - צפייה בזרימות עבודה אוטומטיות וצינורות CI/CD +- **לשונית Insights** - ניתוחים על תורמים, commits, ובריאות הפרויקט - **לשונית Projects** - כלי ניהול פרויקטים מובנים של GitHub -✅ הסתכלו סביב הריפו החדש שלכם ב-GitHub ונסו כמה דברים, כמו עריכת הגדרות, הוספת מידע לריפו שלכם, יצירת פרויקט (כמו לוח קנבן), והגדרת GitHub Actions לאוטומציה. יש הרבה מה לעשות! +✅ הסתכל סביב הריפו החדש שלך ב-GitHub ונסה כמה דברים, כמו עריכת הגדרות, הוספת מידע לריפו שלך, יצירת פרויקט (כמו לוח Kanban), והגדרת GitHub Actions לאוטומציה. יש הרבה מה לעשות! --- ## 🚀 אתגר -טוב, הגיע הזמן לבדוק את כוחות העל החדשים שלכם ב-GitHub! 🚀 הנה אתגר שיגרום לכל הדברים להתחבר בצורה הכי מספקת: +טוב, הגיע הזמן לבדוק את כוחות העל החדשים שלך ב-GitHub! 🚀 הנה אתגר שיגרום להכל להתחבר בצורה הכי מספקת: -תפסו חבר (או את בן המשפחה שתמיד שואל מה אתם עושים עם כל ה"ענייני מחשב" האלה) וצאו להרפתקת קידוד משותפת יחד! כאן הקסם האמיתי קורה – צרו פרויקט, תנו להם לשכפל אותו, צרו כמה סניפים, ומזגו שינויים כמו המקצוענים שאתם הופכים להיות. +תפוס חבר (או את בן המשפחה שתמיד שואל מה אתה עושה עם כל ה"דברים האלה במחשב") וצאו להרפתקת קידוד משותפת יחד! כאן הקסם האמיתי קורה – צרו פרויקט, תנו להם למזלג אותו, צרו כמה סניפים, ומזגו שינויים כמו המקצוענים שאתם הופכים להיות. -אני לא אשקר – כנראה שתצחקו בשלב מסוים (במיוחד כששניכם תנסו לשנות את אותה שורה), אולי תגרדו את הראש בתהייה, אבל בהחלט יהיו לכם את הרגעים המדהימים של "אהה!" שהופכים את כל הלמידה לשווה את זה. בנוסף, יש משהו מיוחד בלשתף את המיזוג הראשון המוצלח עם מישהו אחר – זה כמו חגיגה קטנה של כמה רחוק הגעתם! +אני לא אשקר – כנראה שתצחקו בשלב מסוים (במיוחד כששניכם תנסו לשנות את אותו שורה), אולי תגרדו את הראש בתהייה, אבל בהחלט יהיו לכם את הרגעים המדהימים של "אהה!" שהופכים את כל הלמידה למשתלמת. בנוסף, יש משהו מיוחד בלשתף את המיזוג הראשון המוצלח עם מישהו אחר – זה כמו חגיגה קטנה של כמה רחוק הגעתם! -אין לכם עדיין חבר לקוד? אין בעיה בכלל! קהילת GitHub מלאה באנשים מסבירי פנים שמבינים איך זה להיות חדש. חפשו ריפואים עם תוויות "good first issue" – הם בעצם אומרים "היי מתחילים, בואו ללמוד איתנו!" כמה זה מדהים? +אין לכם עדיין חבר לקוד? אין בעיה בכלל! קהילת GitHub מלאה באנשים מקסימים שמזכירים איך זה היה להיות חדשים. חפשו ריפואים עם תוויות "good first issue" – הם בעצם אומרים "היי מתחילים, בואו ללמוד איתנו!" כמה זה מדהים? -## מבחן לאחר ההרצאה -[מבחן לאחר ההרצאה](https://ff-quizzes.netlify.app/web/en/) +## חידון לאחר ההרצאה +[חידון לאחר ההרצאה](https://ff-quizzes.netlify.app/web/en/) ## סקירה והמשך למידה -וואו! 🎉 תראו אתכם – הרגע כבשתם את יסודות GitHub כמו אלופים אמיתיים! אם המוח שלכם מרגיש קצת מלא עכשיו, זה לגמרי נורמלי ובכנות סימן טוב. הרגע למדתם כלים שלקח לי שבועות להרגיש בנוח איתם כשהתחלתי. +וואו! 🎉 תראו אתכם – הרגע כבשתם את הבסיסים של GitHub כמו אלופים אמיתיים! אם המוח שלכם מרגיש קצת מלא עכשיו, זה לגמרי נורמלי ובכנות סימן טוב. הרגע למדתם כלים שלקח לי שבועות להרגיש בנוח איתם כשהתחלתי. -Git ו-GitHub הם כלים חזקים מאוד (באמת חזקים), וכל מפתח שאני מכיר – כולל אלה שנראים כמו קוסמים עכשיו – היה צריך להתאמן ולהתבלבל קצת לפני שהכל התחבר. העובדה שעברתם את השיעור הזה אומרת שאתם כבר בדרך לשלוט בכמה מהכלים החשובים ביותר בארגז הכלים של המפתח. +Git ו-GitHub הם כלים חזקים להפליא (באמת חזקים), וכל מפתח שאני מכיר – כולל אלה שנראים כמו קוסמים עכשיו – היה צריך להתאמן ולמעוד קצת לפני שהכל התחבר. העובדה שעברתם את השיעור הזה אומרת שאתם כבר בדרך לשלוט בכמה מהכלים הכי חשובים בארגז הכלים של מפתח. הנה כמה משאבים מדהימים שיעזרו לכם להתאמן ולהיות אפילו יותר מדהימים: - [מדריך לתרומה לתוכנה בקוד פתוח](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) – המפה שלכם לעשות שינוי - [דף עזר ל-Git](https://training.github.com/downloads/github-git-cheat-sheet/) – שמרו את זה בהישג יד לעיון מהיר! -וזכרו: תרגול מוביל להתקדמות, לא לשלמות! ככל שתשתמשו ב-Git וב-GitHub, זה יהפוך לטבעי יותר. GitHub יצרו כמה קורסים אינטראקטיביים מדהימים שמאפשרים לכם להתאמן בסביבה בטוחה: +וזכרו: תרגול מוביל להתקדמות, לא לשלמות! ככל שתשתמשו יותר ב-Git וב-GitHub, זה יהפוך לטבעי יותר. GitHub יצרה כמה קורסים אינטראקטיביים מדהימים שמאפשרים לכם להתאמן בסביבה בטוחה: - [מבוא ל-GitHub](https://github.com/skills/introduction-to-github) - [תקשורת באמצעות Markdown](https://github.com/skills/communicate-using-markdown) @@ -691,55 +687,55 @@ Git ו-GitHub הם כלים חזקים מאוד (באמת חזקים), וכל מ - [תיעוד GitHub CLI](https://cli.github.com/manual/) – כשאתם רוצים להרגיש כמו קוסמי שורת הפקודה - [תיעוד GitHub Codespaces](https://docs.github.com/en/codespaces) – קוד בענן! - [תיעוד GitHub Actions](https://docs.github.com/en/actions) – אוטומציה לכל הדברים -- [שיטות עבודה מומלצות ל-Git](https://www.atlassian.com/git/tutorials/comparing-workflows) – שדרגו את שיטות העבודה שלכם +- [שיטות עבודה מומלצות ל-Git](https://www.atlassian.com/git/tutorials/comparing-workflows) – שדרגו את זרימת העבודה שלכם ## אתגר סוכן GitHub Copilot 🚀 השתמשו במצב סוכן כדי להשלים את האתגר הבא: -**תיאור:** צרו פרויקט פיתוח אתרים שיתופי שמדגים את תהליך העבודה המלא של GitHub שלמדתם בשיעור הזה. אתגר זה יעזור לכם לתרגל יצירת ריפו, תכונות שיתוף פעולה ותהליכי עבודה מודרניים של Git בסביבה אמיתית. +**תיאור:** צרו פרויקט פיתוח אתרים שיתופי שמדגים את זרימת העבודה המלאה של GitHub שלמדתם בשיעור הזה. אתגר זה יעזור לכם לתרגל יצירת ריפו, תכונות שיתוף פעולה, וזרימות עבודה מודרניות של Git בסביבה אמיתית. -**הנחיה:** צרו ריפו ציבורי חדש ב-GitHub עבור פרויקט פשוט של "משאבי פיתוח אתרים". הריפו צריך לכלול קובץ README.md מובנה היטב שמפרט כלים ומשאבים שימושיים לפיתוח אתרים, מאורגנים לפי קטגוריות (HTML, CSS, JavaScript וכו'). הגדירו את הריפו עם סטנדרטים קהילתיים מתאימים כולל רישיון, הנחיות לתרומה וקוד התנהגות. צרו לפחות שני סניפי פיצ'רים: אחד להוספת משאבי CSS ואחד למשאבי JavaScript. בצעו commits לכל סניף עם הודעות commit תיאוריות, ואז צרו pull requests כדי למזג את השינויים חזרה ל-main. הפעילו תכונות GitHub כמו Issues, Discussions, והגדירו תהליך עבודה בסיסי של GitHub Actions לבדיקות אוטומטיות. +**הנחיה:** צרו ריפו ציבורי חדש ב-GitHub לפרויקט פשוט של "משאבי פיתוח אתרים". הריפו צריך לכלול קובץ README.md מובנה היטב שמפרט כלים ומשאבים שימושיים לפיתוח אתרים, מאורגנים לפי קטגוריות (HTML, CSS, JavaScript וכו'). הגדירו את הריפו עם סטנדרטים קהילתיים מתאימים כולל רישיון, הנחיות לתרומה וקוד התנהגות. צרו לפחות שני סניפי פיצ'רים: אחד להוספת משאבי CSS ואחד למשאבי JavaScript. בצעו commits לכל סניף עם הודעות commit תיאוריות, ואז צרו pull requests כדי למזג את השינויים חזרה ל-main. הפעילו תכונות GitHub כמו Issues, Discussions, והגדירו זרימת עבודה בסיסית של GitHub Actions לבדיקות אוטומטיות. ## משימה -המשימה שלכם, אם תבחרו לקבל אותה: השלימו את הקורס [מבוא ל-GitHub](https://github.com/skills/introduction-to-github) ב-GitHub Skills. הקורס האינטראקטיבי הזה יאפשר לכם לתרגל את כל מה שלמדתם בסביבה בטוחה ומודרכת. בנוסף, תקבלו תג מגניב כשתסיימו! 🏅 +המשימה שלך, אם תבחר לקבל אותה: השלם את הקורס [מבוא ל-GitHub](https://github.com/skills/introduction-to-github) ב-GitHub Skills. הקורס האינטראקטיבי הזה יאפשר לך לתרגל את כל מה שלמדת בסביבה בטוחה ומודרכת. בנוסף, תקבל תג מגניב כשתסיים! 🏅 **מרגישים מוכנים לעוד אתגרים?** -- הגדירו אימות SSH לחשבון GitHub שלכם (לא עוד סיסמאות!) +- הגדרו אימות SSH לחשבון GitHub שלכם (לא עוד סיסמאות!) - נסו להשתמש ב-GitHub CLI לפעולות Git היומיות שלכם -- צרו ריפו עם תהליך עבודה של GitHub Actions +- צרו ריפו עם זרימת עבודה של GitHub Actions - חקרו את GitHub Codespaces על ידי פתיחת הריפו הזה ממש בעורך מבוסס ענן --- ## 🚀 ציר הזמן לשליטה ב-GitHub -### ⚡ **מה תוכלו לעשות ב-5 הדקות הקרובות** +### ⚡ **מה תוכלו לעשות ב-5 הדקות הבאות** - [ ] ככבו את הריפו הזה ועוד 3 פרויקטים שמעניינים אתכם - [ ] הגדירו אימות דו-שלבי לחשבון GitHub שלכם -- [ ] צרו README פשוט עבור הריפו הראשון שלכם +- [ ] צרו README פשוט לריפו הראשון שלכם - [ ] עקבו אחרי 5 מפתחים שהעבודה שלהם מעוררת בכם השראה -### 🎯 **מה תוכלו להשיג בשעה הקרובה** -- [ ] השלימו את המבחן לאחר השיעור וחשבו על המסע שלכם ב-GitHub -- [ ] הגדירו מפתחות SSH לאימות GitHub ללא סיסמה -- [ ] בצעו את ה-commit המשמעותי הראשון שלכם עם הודעת commit מעולה +### 🎯 **מה תוכלו להשיג בשעה הקרובה** +- [ ] השלימו את החידון לאחר השיעור וחשבו על המסע שלכם ב-GitHub +- [ ] הגדירו מפתחות SSH לאימות GitHub ללא סיסמאות +- [ ] בצעו את ה-commit המשמעותי הראשון שלכם עם הודעת commit נהדרת - [ ] חקרו את לשונית "Explore" של GitHub כדי לגלות פרויקטים פופולריים -- [ ] תרגלו שכפול ריפו וביצוע שינוי קטן +- [ ] תרגלו מזלוג ריפו וביצוע שינוי קטן -### 📅 **הרפתקת GitHub שלכם לשבוע הקרוב** +### 📅 **הרפתקת GitHub של שבוע** - [ ] השלימו את קורסי GitHub Skills (מבוא ל-GitHub, Markdown) - [ ] בצעו את ה-pull request הראשון שלכם לפרויקט קוד פתוח -- [ ] הקימו אתר GitHub Pages כדי להציג את העבודה שלכם +- [ ] הגדירו אתר GitHub Pages כדי להציג את העבודה שלכם - [ ] הצטרפו לדיונים ב-GitHub בפרויקטים שמעניינים אתכם - [ ] צרו ריפו עם סטנדרטים קהילתיים מתאימים (README, רישיון וכו') - [ ] נסו את GitHub Codespaces לפיתוח מבוסס ענן -### 🌟 **הטרנספורמציה שלכם לחודש הקרוב** +### 🌟 **הטרנספורמציה שלכם בחודש** - [ ] תרמו ל-3 פרויקטים שונים של קוד פתוח -- [ ] היו מנטורים למישהו חדש ב-GitHub (תנו את זה הלאה!) -- [ ] הגדירו תהליכי עבודה אוטומטיים עם GitHub Actions +- [ ] היו מנטורים למישהו חדש ב-GitHub (תנו בחזרה!) +- [ ] הגדירו זרימות עבודה אוטומטיות עם GitHub Actions - [ ] בנו תיק עבודות שמציג את התרומות שלכם ב-GitHub - [ ] השתתפו ב-Hacktoberfest או אירועי קהילה דומים - [ ] הפכו למתחזקים של הפרויקט שלכם שאחרים תורמים לו @@ -749,31 +745,32 @@ Git ו-GitHub הם כלים חזקים מאוד (באמת חזקים), וכל מ **חגגו כמה רחוק הגעתם:** - מה הדבר האהוב עליכם בשימוש ב-GitHub? - איזו תכונת שיתוף פעולה הכי מרגשת אתכם? -- כמה אתם מרגישים בטוחים לתרום לקוד פתוח עכשיו? +- כמה בטוחים אתם מרגישים לגבי תרומה לקוד פתוח עכשיו? - מה הפרויקט הראשון שתרצו לתרום לו? ```mermaid journey - title Your GitHub Confidence Journey - section Today - Nervous: 3: You - Curious: 4: You - Excited: 5: You - section This Week - Practicing: 4: You - Contributing: 5: You - Connecting: 5: You - section Next Month - Collaborating: 5: You - Leading: 5: You - Inspiring Others: 5: You -``` - -> 🌍 **ברוכים הבאים לקהילת המפתחים העולמית!** עכשיו יש לכם את הכלים לשתף פעולה עם מיליוני מפתחים ברחבי העולם. התרומה הראשונה שלכם אולי תיראה קטנה, אבל זכרו - כל פרויקט קוד פתוח גדול התחיל עם מישהו שעשה את ה-commit הראשון שלו. השאלה היא לא אם תשפיעו, אלא איזה פרויקט מדהים ייהנה מהפרספקטיבה הייחודית שלכם קודם! 🚀 + title מסע הביטחון שלך ב-GitHub + section היום + עצבני: 3: אתה + סקרן: 4: אתה + נרגש: 5: אתה + section השבוע + מתאמן: 4: אתה + תורם: 5: אתה + מתחבר: 5: אתה + section החודש הבא + משתף פעולה: 5: אתה + מוביל: 5: אתה + מעורר השראה באחרים: 5: אתה +``` +> 🌍 **ברוכים הבאים לקהילת המפתחים הגלובלית!** עכשיו יש לכם את הכלים לשתף פעולה עם מיליוני מפתחים ברחבי העולם. התרומה הראשונה שלכם עשויה להיראות קטנה, אבל זכרו - כל פרויקט קוד פתוח גדול התחיל עם מישהו שעשה את ה-commit הראשון שלו. השאלה היא לא אם תעשו שינוי, אלא איזה פרויקט מדהים ייהנה מהפרספקטיבה הייחודית שלכם קודם! 🚀 זכרו: כל מומחה היה פעם מתחיל. אתם יכולים לעשות את זה! 💪 --- -**הצהרת אחריות**: -מסמך זה תורגם באמצעות שירות תרגום AI [Co-op Translator](https://github.com/Azure/co-op-translator). למרות שאנו שואפים לדיוק, יש לקחת בחשבון שתרגומים אוטומטיים עשויים להכיל שגיאות או אי דיוקים. המסמך המקורי בשפתו המקורית צריך להיחשב כמקור סמכותי. עבור מידע קריטי, מומלץ להשתמש בתרגום מקצועי אנושי. אנו לא נושאים באחריות לכל אי הבנות או פרשנויות שגויות הנובעות משימוש בתרגום זה. \ No newline at end of file + +**כתב ויתור**: +מסמך זה תורגם באמצעות שירות תרגום AI [Co-op Translator](https://github.com/Azure/co-op-translator). למרות שאנו שואפים לדיוק, יש להיות מודעים לכך שתרגומים אוטומטיים עשויים להכיל שגיאות או אי דיוקים. המסמך המקורי בשפתו המקורית צריך להיחשב כמקור סמכותי. עבור מידע קריטי, מומלץ להשתמש בתרגום מקצועי אנושי. איננו אחראים לאי הבנות או לפרשנויות שגויות הנובעות משימוש בתרגום זה. + \ No newline at end of file diff --git a/translations/he/README.md b/translations/he/README.md index 4d4bb1ef..9e8a44ef 100644 --- a/translations/he/README.md +++ b/translations/he/README.md @@ -1,8 +1,8 @@ +[ערבית](../ar/README.md) | [בנגלית](../bn/README.md) | [בולגרית](../bg/README.md) | [בורמזית (מיאנמר)](../my/README.md) | [סינית (פשוטה)](../zh/README.md) | [סינית (מסורתית, הונג קונג)](../hk/README.md) | [סינית (מסורתית, מקאו)](../mo/README.md) | [סינית (מסורתית, טייוואן)](../tw/README.md) | [קרואטית](../hr/README.md) | [צ'כית](../cs/README.md) | [דנית](../da/README.md) | [הולנדית](../nl/README.md) | [אסטונית](../et/README.md) | [פינית](../fi/README.md) | [צרפתית](../fr/README.md) | [גרמנית](../de/README.md) | [יוונית](../el/README.md) | [עברית](./README.md) | [הינדית](../hi/README.md) | [הונגרית](../hu/README.md) | [אינדונזית](../id/README.md) | [איטלקית](../it/README.md) | [יפנית](../ja/README.md) | [קוריאנית](../ko/README.md) | [ליטאית](../lt/README.md) | [מלאית](../ms/README.md) | [מרטהי](../mr/README.md) | [נפאלית](../ne/README.md) | [נורווגית](../no/README.md) | [פרסית (פרסי)](../fa/README.md) | [פולנית](../pl/README.md) | [פורטוגזית (ברזיל)](../br/README.md) | [פורטוגזית (פורטוגל)](../pt/README.md) | [פונג'בית (גורמוקי)](../pa/README.md) | [רומנית](../ro/README.md) | [רוסית](../ru/README.md) | [סרבית (קירילית)](../sr/README.md) | [סלובקית](../sk/README.md) | [סלובנית](../sl/README.md) | [ספרדית](../es/README.md) | [סוואהילית](../sw/README.md) | [שוודית](../sv/README.md) | [טאגאלוג (פיליפינית)](../tl/README.md) | [טמילית](../ta/README.md) | [תאית](../th/README.md) | [טורקית](../tr/README.md) | [אוקראינית](../uk/README.md) | [אורדו](../ur/README.md) | [וייטנאמית](../vi/README.md) + -**אם תרצו להוסיף שפות נוספות, רשימת השפות הנתמכות נמצאת [כאן](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)** +**אם תרצו להוסיף שפות נוספות, השפות הנתמכות מפורטות [כאן](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)** [![פתח ב-Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners) @@ -46,15 +48,15 @@ CO_OP_TRANSLATOR_METADATA: בקרו ב-[**עמוד הסטודנטים**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) שם תמצאו משאבים למתחילים, חבילות לסטודנטים ואפילו דרכים לקבל שובר לתעודה בחינם. זהו עמוד שכדאי לשמור ולבדוק מדי פעם, שכן אנו מעדכנים את התוכן מדי חודש. -### 📣 הודעה - אתגרי מצב סוכן חדש של GitHub Copilot להשלמה! +### 📣 הכרזה - אתגרי מצב סוכן של GitHub Copilot חדשים להשלמה! אתגר חדש נוסף, חפשו את "GitHub Copilot Agent Challenge 🚀" ברוב הפרקים. זהו אתגר חדש עבורכם להשלמה באמצעות GitHub Copilot ומצב סוכן. אם לא השתמשתם במצב סוכן בעבר, הוא מסוגל לא רק לייצר טקסט אלא גם ליצור ולערוך קבצים, להריץ פקודות ועוד. -### 📣 הודעה - _פרויקט חדש לבנייה באמצעות AI גנרטיבי_ +### 📣 הכרזה - _פרויקט חדש לבנייה באמצעות AI גנרטיבי_ פרויקט עוזר AI חדש נוסף, בדקו אותו [פרויקט](./09-chat-project/README.md) -### 📣 הודעה - _תוכנית לימודים חדשה_ על AI גנרטיבי ל-JavaScript שוחררה +### 📣 הכרזה - _תוכנית לימודים חדשה_ על AI גנרטיבי ל-JavaScript שוחררה אל תפספסו את תוכנית הלימודים החדשה שלנו על AI גנרטיבי! @@ -64,24 +66,24 @@ CO_OP_TRANSLATOR_METADATA: - שיעורים המכסים הכל מהבסיס ועד RAG. - אינטראקציה עם דמויות היסטוריות באמצעות GenAI ואפליקציית הליווי שלנו. -- נרטיב מהנה ומרתק, תצאו למסע בזמן! +- נרטיב מהנה ומרתק, תעשו מסע בזמן! ![דמות](../../translated_images/character.5c0dd8e067ffd693c16e2c5b7412ab075a2215ce31f998305639fa3a05e14fbe.he.png) כל שיעור כולל משימה להשלמה, בדיקת ידע ואתגר שינחה אתכם בלימוד נושאים כמו: -- יצירת הנחיות והנדסת הנחיות +- הנחיה והנדסת הנחיות - יצירת אפליקציות טקסט ותמונה - אפליקציות חיפוש בקרו ב-[https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) כדי להתחיל! -## 🌱 איך מתחילים +## 🌱 התחלה -> **מורים**, אנו [הוספנו כמה הצעות](for-teachers.md) כיצד להשתמש בתוכנית הלימודים הזו. נשמח לשמוע את דעתכם [בפורום הדיונים שלנו](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! +> **מורים**, כללנו [כמה הצעות](for-teachers.md) כיצד להשתמש בתוכנית הלימודים הזו. נשמח לשמוע את דעתכם [בפורום הדיונים שלנו](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! -**[לומדים](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, בכל שיעור, התחילו בחידון מקדים והמשיכו בקריאת חומרי השיעור, השלימו את הפעילויות השונות ובדקו את הבנתכם עם החידון שלאחר השיעור. +**[לומדים](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, לכל שיעור, התחילו עם חידון לפני השיעור והמשיכו בקריאת חומר השיעור, השלמת הפעילויות השונות ובדקו את הבנתכם עם חידון לאחר השיעור. -כדי לשפר את חוויית הלמידה שלכם, התחברו עם חברים כדי לעבוד יחד על הפרויקטים! דיונים מעודדים ב-[פורום הדיונים שלנו](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) שם צוות המנחים שלנו יהיה זמין לענות על שאלותיכם. +כדי לשפר את חוויית הלמידה שלכם, התחברו עם עמיתים לעבודה על הפרויקטים יחד! דיונים מעודדים בפורום הדיונים שלנו [discussion forum](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) שם צוות המנהלים שלנו יהיה זמין לענות על שאלותיכם. כדי להרחיב את השכלתכם, אנו ממליצים מאוד לחקור את [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) עבור חומרי לימוד נוספים. @@ -89,30 +91,30 @@ CO_OP_TRANSLATOR_METADATA: לתוכנית הלימודים הזו יש סביבת פיתוח מוכנה לשימוש! כשאתם מתחילים, תוכלו לבחור להריץ את התוכנית הלימודים ב-[Codespace](https://github.com/features/codespaces/) (_סביבה מבוססת דפדפן, ללא צורך בהתקנות_), או מקומית על המחשב שלכם באמצעות עורך טקסט כמו [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). -#### צרו את המאגר שלכם -כדי לשמור את העבודה שלכם בקלות, מומלץ ליצור עותק משלכם של מאגר זה. תוכלו לעשות זאת על ידי לחיצה על כפתור **Use this template** בראש העמוד. זה ייצור מאגר חדש בחשבון GitHub שלכם עם עותק של תוכנית הלימודים. +#### יצירת המאגר שלכם +כדי לשמור את העבודה שלכם בקלות, מומלץ ליצור עותק משלכם של המאגר הזה. תוכלו לעשות זאת על ידי לחיצה על כפתור **Use this template** בראש העמוד. זה ייצור מאגר חדש בחשבון GitHub שלכם עם עותק של תוכנית הלימודים. עקבו אחר השלבים הבאים: -1. **צרו מזלג למאגר**: לחצו על כפתור "Fork" בפינה הימנית העליונה של עמוד זה. -2. **שכפלו את המאגר**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` +1. **עשו Fork למאגר**: לחצו על כפתור "Fork" בפינה הימנית העליונה של העמוד הזה. +2. **שכפלו את המאגר**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` #### הרצת תוכנית הלימודים ב-Codespace -בעותק של המאגר שיצרתם, לחצו על כפתור **Code** ובחרו **Open with Codespaces**. זה ייצור עבורכם Codespace חדש לעבודה. +בעותק שלכם של המאגר שיצרתם, לחצו על כפתור **Code** ובחרו **Open with Codespaces**. זה ייצור Codespace חדש עבורכם לעבוד בו. ![Codespace](../../translated_images/createcodespace.0238bbf4d7a8d955fa8fa7f7b6602a3cb6499a24708fbee589f83211c5a613b7.he.png) -#### הרצת תוכנית הלימודים באופן מקומי על המחשב שלכם +#### הרצת תוכנית הלימודים מקומית על המחשב שלכם -כדי להריץ את תוכנית הלימודים באופן מקומי על המחשב שלכם, תצטרכו עורך טקסט, דפדפן וכלי שורת פקודה. השיעור הראשון שלנו, [מבוא לשפות תכנות וכלי עבודה](../../1-getting-started-lessons/1-intro-to-programming-languages), ידריך אתכם דרך אפשרויות שונות לכל אחד מהכלים הללו כדי שתוכלו לבחור את מה שמתאים לכם ביותר. +כדי להריץ את תוכנית הלימודים מקומית על המחשב שלכם, תצטרכו עורך טקסט, דפדפן וכלי שורת פקודה. השיעור הראשון שלנו, [מבוא לשפות תכנות וכלי העבודה](../../1-getting-started-lessons/1-intro-to-programming-languages), ידריך אתכם דרך אפשרויות שונות לכלים אלו כדי שתוכלו לבחור את מה שמתאים לכם ביותר. -ההמלצה שלנו היא להשתמש ב-[Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) כעורך שלכם, שיש לו גם [טרמינל מובנה](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon). תוכלו להוריד את Visual Studio Code [כאן](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). +ההמלצה שלנו היא להשתמש ב-[Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) כעורך שלכם, שיש לו גם [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) מובנה. תוכלו להוריד את Visual Studio Code [כאן](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). 1. שכפלו את המאגר שלכם למחשב. תוכלו לעשות זאת על ידי לחיצה על כפתור **Code** והעתקת ה-URL: [CodeSpace](./images/createcodespace.png) - לאחר מכן, פתחו את [טרמינל](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) בתוך [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) והריצו את הפקודה הבאה, החליפו `` ב-URL שהעתקתם: + לאחר מכן, פתחו [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) בתוך [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) והריצו את הפקודה הבאה, החליפו `` ב-URL שהעתקתם: ```bash git clone @@ -120,62 +122,62 @@ CO_OP_TRANSLATOR_METADATA: 2. פתחו את התיקייה ב-Visual Studio Code. תוכלו לעשות זאת על ידי לחיצה על **File** > **Open Folder** ובחירת התיקייה ששכפלתם. -> הרחבות מומלצות ל-Visual Studio Code: +> הרחבות מומלצות ל-Visual Studio Code: > -> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - לצפייה מקדימה בדפי HTML בתוך Visual Studio Code -> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - לעזור לכם לכתוב קוד מהר יותר +> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - כדי להציג דפי HTML בתוך Visual Studio Code +> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - לעזור לכם לכתוב קוד מהר יותר ## 📂 כל שיעור כולל: -- סקיצה אופציונלית -- סרטון משלים אופציונלי -- שאלון חימום לפני השיעור -- שיעור כתוב -- עבור שיעורים מבוססי פרויקטים, מדריכים שלב אחר שלב לבניית הפרויקט -- בדיקות ידע -- אתגר -- קריאה משלימה -- משימה -- [שאלון לאחר השיעור](https://ff-quizzes.netlify.app/web/) +- סקיצה אופציונלית +- סרטון משלים אופציונלי +- חידון חימום לפני השיעור +- שיעור כתוב +- עבור שיעורים מבוססי פרויקטים, מדריכים שלב אחר שלב כיצד לבנות את הפרויקט +- בדיקות ידע +- אתגר +- קריאה משלימה +- משימה +- [חידון לאחר השיעור](https://ff-quizzes.netlify.app/web/) -> **הערה לגבי שאלונים**: כל השאלונים נמצאים בתיקיית Quiz-app, סה"כ 48 שאלונים עם שלוש שאלות בכל אחד. הם זמינים [כאן](https://ff-quizzes.netlify.app/web/) וניתן להפעיל את אפליקציית השאלונים באופן מקומי או לפרוס אותה ב-Azure; עקבו אחר ההוראות בתיקיית `quiz-app`. +> **הערה לגבי חידונים**: כל החידונים נמצאים בתיקיית Quiz-app, סה"כ 48 חידונים עם שלוש שאלות בכל אחד. הם זמינים [כאן](https://ff-quizzes.netlify.app/web/) וניתן להפעיל את אפליקציית החידונים באופן מקומי או לפרוס אותה ב-Azure; עקבו אחר ההוראות בתיקיית `quiz-app`. ## 🗃️ שיעורים -| | שם הפרויקט | מושגים נלמדים | מטרות למידה | קישור לשיעור | מחבר | +| | שם הפרויקט | מושגים נלמדים | מטרות למידה | שיעור מקושר | מחבר | | :-: | :------------------------------------------------------: | :--------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------: | :---------------------: | | 01 | התחלה | מבוא לתכנות וכלי העבודה | למדו את היסודות מאחורי רוב שפות התכנות ואת התוכנות שעוזרות למפתחים מקצועיים לבצע את עבודתם | [מבוא לשפות תכנות וכלי העבודה](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine | | 02 | התחלה | יסודות GitHub, כולל עבודה בצוות | כיצד להשתמש ב-GitHub בפרויקט שלכם, כיצד לשתף פעולה עם אחרים על בסיס קוד | [מבוא ל-GitHub](./1-getting-started-lessons/2-github-basics/README.md) | Floor | -| 03 | התחלה | נגישות | למדו את היסודות של נגישות באינטרנט | [יסודות הנגישות](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | +| 03 | התחלה | נגישות | למדו את היסודות של נגישות באינטרנט | [יסודות נגישות](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | | 04 | יסודות JS | סוגי נתונים ב-JavaScript | היסודות של סוגי נתונים ב-JavaScript | [סוגי נתונים](./2-js-basics/1-data-types/README.md) | Jasmine | -| 05 | יסודות JS | פונקציות ושיטות | למדו על פונקציות ושיטות לניהול זרימת הלוגיקה של האפליקציה | [פונקציות ושיטות](./2-js-basics/2-functions-methods/README.md) | Jasmine and Christopher | +| 05 | יסודות JS | פונקציות ושיטות | למדו על פונקציות ושיטות לניהול זרימת הלוגיקה של אפליקציה | [פונקציות ושיטות](./2-js-basics/2-functions-methods/README.md) | Jasmine and Christopher | | 06 | יסודות JS | קבלת החלטות עם JS | למדו כיצד ליצור תנאים בקוד שלכם באמצעות שיטות קבלת החלטות | [קבלת החלטות](./2-js-basics/3-making-decisions/README.md) | Jasmine | | 07 | יסודות JS | מערכים ולולאות | עבודה עם נתונים באמצעות מערכים ולולאות ב-JavaScript | [מערכים ולולאות](./2-js-basics/4-arrays-loops/README.md) | Jasmine | -| 08 | [טרריום](./3-terrarium/solution/README.md) | HTML בפועל | בניית HTML ליצירת טרריום מקוון, תוך התמקדות בבניית פריסה | [מבוא ל-HTML](./3-terrarium/1-intro-to-html/README.md) | Jen | -| 09 | [טרריום](./3-terrarium/solution/README.md) | CSS בפועל | בניית CSS לעיצוב הטרריום המקוון, תוך התמקדות ביסודות CSS כולל הפיכת הדף לרספונסיבי | [מבוא ל-CSS](./3-terrarium/2-intro-to-css/README.md) | Jen | -| 10 | [טרריום](./3-terrarium/solution/README.md) | סגירות JavaScript, מניפולציה של DOM | בניית JavaScript כדי לגרום לטרריום לפעול כממשק גרירה/שחרור, תוך התמקדות בסגירות ובמניפולציה של DOM | [סגירות JavaScript, מניפולציה של DOM](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | -| 11 | [משחק הקלדה](./4-typing-game/solution/README.md) | בניית משחק הקלדה | למדו כיצד להשתמש באירועי מקלדת כדי להניע את הלוגיקה של אפליקציית JavaScript שלכם | [תכנות מונחה אירועים](./4-typing-game/typing-game/README.md) | Christopher | +| 08 | [טרריום](./3-terrarium/solution/README.md) | HTML בפועל | בניית ה-HTML ליצירת טרריום מקוון, תוך התמקדות בבניית פריסה | [מבוא ל-HTML](./3-terrarium/1-intro-to-html/README.md) | Jen | +| 09 | [טרריום](./3-terrarium/solution/README.md) | CSS בפועל | בניית ה-CSS לעיצוב הטרריום המקוון, תוך התמקדות ביסודות CSS כולל הפיכת הדף לרספונסיבי | [מבוא ל-CSS](./3-terrarium/2-intro-to-css/README.md) | Jen | +| 10 | [טרריום](./3-terrarium/solution/README.md) | סגירות JavaScript, מניפולציה של DOM | בניית ה-JavaScript כדי לגרום לטרריום לתפקד כממשק גרירה/שחרור, תוך התמקדות בסגירות ובמניפולציה של DOM | [סגירות JavaScript, מניפולציה של DOM](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | +| 11 | [משחק הקלדה](./4-typing-game/solution/README.md) | בניית משחק הקלדה | למדו כיצד להשתמש באירועי מקלדת כדי להניע את הלוגיקה של אפליקציית ה-JavaScript שלכם | [תכנות מונחה אירועים](./4-typing-game/typing-game/README.md) | Christopher | | 12 | [תוסף דפדפן ירוק](./5-browser-extension/solution/README.md) | עבודה עם דפדפנים | למדו כיצד דפדפנים עובדים, ההיסטוריה שלהם, וכיצד לבנות את האלמנטים הראשונים של תוסף דפדפן | [על דפדפנים](./5-browser-extension/1-about-browsers/README.md) | Jen | -| 13 | [תוסף דפדפן ירוק](./5-browser-extension/solution/README.md) | בניית טופס, קריאה ל-API ואחסון משתנים באחסון מקומי | בניית אלמנטים JavaScript של תוסף הדפדפן שלכם כדי לקרוא ל-API באמצעות משתנים המאוחסנים באחסון מקומי | [APIs, טפסים ואחסון מקומי](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | -| 14 | [תוסף דפדפן ירוק](./5-browser-extension/solution/README.md) | תהליכים ברקע בדפדפן, ביצועי רשת | השתמשו בתהליכים ברקע של הדפדפן כדי לנהל את סמל התוסף; למדו על ביצועי רשת וכמה אופטימיזציות לשיפור | [משימות ברקע וביצועים](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | +| 13 | [תוסף דפדפן ירוק](./5-browser-extension/solution/README.md) | בניית טופס, קריאה ל-API ואחסון משתנים באחסון מקומי | בניית אלמנטי JavaScript של תוסף הדפדפן שלכם כדי לקרוא ל-API באמצעות משתנים המאוחסנים באחסון מקומי | [APIs, טפסים ואחסון מקומי](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | +| 14 | [תוסף דפדפן ירוק](./5-browser-extension/solution/README.md) | תהליכים ברקע בדפדפן, ביצועי רשת | שימוש בתהליכים ברקע של הדפדפן לניהול אייקון התוסף; למדו על ביצועי רשת וכמה אופטימיזציות לשיפור | [משימות ברקע וביצועים](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | | 15 | [משחק חלל](./6-space-game/solution/README.md) | פיתוח משחק מתקדם יותר עם JavaScript | למדו על ירושה באמצעות גם מחלקות וגם קומפוזיציה ודפוס Pub/Sub, כהכנה לבניית משחק | [מבוא לפיתוח משחק מתקדם](./6-space-game/1-introduction/README.md) | Chris | -| 16 | [משחק חלל](./6-space-game/solution/README.md) | ציור על קנבס | למדו על Canvas API, המשמש לציור אלמנטים על המסך | [ציור על קנבס](./6-space-game/2-drawing-to-canvas/README.md) | Chris | -| 17 | [משחק חלל](./6-space-game/solution/README.md) | הזזת אלמנטים על המסך | גלו כיצד אלמנטים יכולים לקבל תנועה באמצעות קואורדינטות קרטזיות ו-Canvas API | [הזזת אלמנטים על המסך](./6-space-game/3-moving-elements-around/README.md) | Chris | -| 18 | [משחק חלל](./6-space-game/solution/README.md) | זיהוי התנגשות | גרמו לאלמנטים להתנגש ולהגיב זה לזה באמצעות לחיצות מקשים וספקו פונקציית קירור כדי להבטיח ביצועי המשחק | [זיהוי התנגשות](./6-space-game/4-collision-detection/README.md) | Chris | -| 19 | [משחק חלל](./6-space-game/solution/README.md) | שמירת ניקוד | בצעו חישובים מתמטיים בהתבסס על מצב המשחק וביצועיו | [שמירת ניקוד](./6-space-game/5-keeping-score/README.md) | Chris | +| 16 | [משחק חלל](./6-space-game/solution/README.md) | ציור לקנבס | למדו על Canvas API, המשמש לציור אלמנטים למסך | [ציור לקנבס](./6-space-game/2-drawing-to-canvas/README.md) | Chris | +| 17 | [משחק חלל](./6-space-game/solution/README.md) | הזזת אלמנטים על המסך | גלו כיצד אלמנטים יכולים לקבל תנועה באמצעות קואורדינטות קרטזיות ו-Canvas API | [הזזת אלמנטים](./6-space-game/3-moving-elements-around/README.md) | Chris | +| 18 | [משחק חלל](./6-space-game/solution/README.md) | זיהוי התנגשות | גרמו לאלמנטים להתנגש ולהגיב זה לזה באמצעות לחיצות מקשים וספקו פונקציית קירור כדי להבטיח ביצועי משחק | [זיהוי התנגשות](./6-space-game/4-collision-detection/README.md) | Chris | +| 19 | [משחק חלל](./6-space-game/solution/README.md) | שמירת ניקוד | ביצוע חישובים מתמטיים בהתבסס על מצב המשחק וביצועיו | [שמירת ניקוד](./6-space-game/5-keeping-score/README.md) | Chris | | 20 | [משחק חלל](./6-space-game/solution/README.md) | סיום והתחלה מחדש של המשחק | למדו על סיום והתחלה מחדש של המשחק, כולל ניקוי נכסים ואיפוס ערכי משתנים | [תנאי סיום](./6-space-game/6-end-condition/README.md) | Chris | | 21 | [אפליקציית בנקאות](./7-bank-project/solution/README.md) | תבניות HTML ונתיבים באפליקציית רשת | למדו כיצד ליצור את המבנה של ארכיטקטורת אתר מרובה עמודים באמצעות נתיבים ותבניות HTML | [תבניות HTML ונתיבים](./7-bank-project/1-template-route/README.md) | Yohan | -| 22 | [אפליקציית בנקאות](./7-bank-project/solution/README.md) | בניית טופס כניסה ורישום | למדו על בניית טפסים וטיפול ברוטינות אימות | [טפסים](./7-bank-project/2-forms/README.md) | Yohan | -| 23 | [אפליקציית בנקאות](./7-bank-project/solution/README.md) | שיטות של הבאת נתונים ושימוש בהם | כיצד נתונים זורמים פנימה והחוצה מהאפליקציה שלכם, כיצד להביא אותם, לאחסן אותם ולהיפטר מהם | [נתונים](./7-bank-project/3-data/README.md) | Yohan | +| 22 | [אפליקציית בנקאות](./7-bank-project/solution/README.md) | בניית טופס כניסה וטופס הרשמה | למדו על בניית טפסים וטיפול ברוטינות אימות | [טפסים](./7-bank-project/2-forms/README.md) | Yohan | +| 23 | [אפליקציית בנקאות](./7-bank-project/solution/README.md) | שיטות לאחזור ושימוש בנתונים | כיצד נתונים זורמים פנימה והחוצה מהאפליקציה שלכם, כיצד לאחזר אותם, לאחסן אותם ולהיפטר מהם | [נתונים](./7-bank-project/3-data/README.md) | Yohan | | 24 | [אפליקציית בנקאות](./7-bank-project/solution/README.md) | מושגים של ניהול מצב | למדו כיצד האפליקציה שלכם שומרת מצב וכיצד לנהל אותו באופן תכנותי | [ניהול מצב](./7-bank-project/4-state-management/README.md) | Yohan | -| 25 | [קוד דפדפן/VScode](../../8-code-editor) | עבודה עם VScode | למדו כיצד להשתמש בעורך קוד | [שימוש בעורך קוד VScode](./8-code-editor/1-using-a-code-editor/README.md) | Chris | +| 25 | [קוד דפדפן/VScode](../../8-code-editor) | עבודה עם VScode | למדו כיצד להשתמש בעורך קוד| [שימוש בעורך קוד VScode](./8-code-editor/1-using-a-code-editor/README.md) | Chris | | 26 | [עוזרי AI](./9-chat-project/README.md) | עבודה עם AI | למדו כיצד לבנות עוזר AI משלכם | [פרויקט עוזר AI](./9-chat-project/README.md) | Chris | ## 🏫 פדגוגיה תוכנית הלימודים שלנו עוצבה עם שני עקרונות פדגוגיים מרכזיים: -* למידה מבוססת פרויקטים -* שאלונים תכופים +* למידה מבוססת פרויקטים +* חידונים תכופים התוכנית מלמדת את יסודות JavaScript, HTML ו-CSS, כמו גם הכלים והטכניקות העדכניים ביותר בהם משתמשים מפתחי רשת כיום. התלמידים יקבלו הזדמנות לפתח ניסיון מעשי על ידי בניית משחק הקלדה, טרריום וירטואלי, תוסף דפדפן ידידותי לסביבה, משחק בסגנון פולש חלל ואפליקציית בנקאות לעסקים. בסוף הסדרה, התלמידים ירכשו הבנה מוצקה של פיתוח רשת. @@ -183,12 +185,13 @@ CO_OP_TRANSLATOR_METADATA: על ידי הבטחת התאמת התוכן לפרויקטים, התהליך נעשה יותר מרתק עבור התלמידים ושימור המושגים יוגבר. בנוסף, כתבנו מספר שיעורי פתיחה ביסודות JavaScript כדי להציג מושגים, יחד עם סרטון מתוך אוסף "[סדרת מתחילים ל-JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" של מדריכי וידאו, שחלק מהכותבים שלהם תרמו לתוכנית הלימודים הזו. -בנוסף, שאלון בעל סיכון נמוך לפני השיעור מכוון את כוונת התלמיד ללמידת נושא, בעוד שאלון שני לאחר השיעור מבטיח שימור נוסף. תוכנית הלימודים הזו עוצבה להיות גמישה ומהנה וניתן לקחת אותה בשלמותה או בחלקים. הפרויקטים מתחילים קטנים והופכים מורכבים יותר בסוף מחזור של 12 שבועות. +בנוסף, חידון בעל סיכון נמוך לפני השיעור מכוון את כוונת התלמיד ללמידת נושא, בעוד שחידון שני לאחר השיעור מבטיח שימור נוסף. תוכנית הלימודים הזו עוצבה להיות גמישה ומהנה וניתן לקחת אותה בשלמותה או בחלקים. הפרויקטים מתחילים קטנים והופכים מורכבים יותר בסוף מחזור של 12 שבועות. -בעוד שבכוונה נמנענו מהצגת מסגרות JavaScript כדי להתמקד במיומנויות הבסיסיות הנדרשות כמפתח רשת לפני אימוץ מסגרת, צעד טוב הבא לאחר השלמת תוכנית הלימודים הזו יהיה ללמוד על Node.js באמצעות אוסף נוסף של סרטונים: "[סדרת מתחילים ל-Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)". +בעוד שבכוונה נמנענו מהצגת מסגרות JavaScript כדי להתמקד בכישורים הבסיסיים הנדרשים כמפתח רשת לפני אימוץ מסגרת, צעד טוב להשלמת תוכנית הלימודים הזו יהיה ללמוד על Node.js באמצעות אוסף נוסף של סרטונים: "[סדרת מתחילים ל-Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)". > בקרו ב-[קוד ההתנהגות](CODE_OF_CONDUCT.md) וב-[הנחיות תרומה](CONTRIBUTING.md) שלנו. נשמח לקבל את המשוב הבונה שלכם! + ## 🧭 גישה לא מקוונת ניתן להפעיל את התיעוד הזה באופן לא מקוון באמצעות [Docsify](https://docsify.js.org/#/). עשו Fork למאגר הזה, [התקינו את Docsify](https://docsify.js.org/#/quickstart) במחשב המקומי שלכם, ואז בתיקיית השורש של המאגר הזה, הקלידו `docsify serve`. האתר יוגש על פורט 3000 ב-localhost שלכם: `localhost:3000`. @@ -197,12 +200,14 @@ CO_OP_TRANSLATOR_METADATA: ניתן למצוא PDF של כל השיעורים [כאן](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf). + ## 🎒 קורסים נוספים הצוות שלנו מייצר קורסים נוספים! בדקו: -### Azure / Edge / MCP / Agents -[![AZD למתחילים](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst) + +### Azure / Edge / MCP / Agents +[![AZD for Beginners](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst) [![Edge AI למתחילים](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst) [![MCP למתחילים](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst) [![סוכני AI למתחילים](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst) @@ -217,7 +222,7 @@ CO_OP_TRANSLATOR_METADATA: --- -### למידה בסיסית +### לימוד בסיסי [![ML למתחילים](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst) [![מדעי הנתונים למתחילים](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst) [![AI למתחילים](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst) @@ -233,15 +238,17 @@ CO_OP_TRANSLATOR_METADATA: [![Copilot ל-C#/.NET](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst) [![הרפתקאות Copilot](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst) +--- + ## קבלת עזרה -אם אתם נתקעים או יש לכם שאלות על בניית אפליקציות AI, הצטרפו: +אם אתם נתקעים או יש לכם שאלות על בניית אפליקציות AI, הצטרפו ללומדים אחרים ולמפתחים מנוסים בדיונים על MCP. זו קהילה תומכת שבה שאלות מתקבלות בברכה וידע משותף בחופשיות. -[![Azure AI Foundry Discord](https://img.shields.io/badge/Discord-Azure_AI_Foundry_Community_Discord-blue?style=for-the-badge&logo=discord&color=5865f2&logoColor=fff)](https://aka.ms/foundry/discord) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) -אם יש לכם משוב על מוצרים או שגיאות בזמן הבנייה, בקרו: +אם יש לכם משוב על מוצרים או נתקלתם בשגיאות במהלך הבנייה, בקרו ב: -[![Azure AI Foundry Developer Forum](https://img.shields.io/badge/GitHub-Azure_AI_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) +[![Microsoft Foundry Developer Forum](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) ## רישיון @@ -249,5 +256,7 @@ CO_OP_TRANSLATOR_METADATA: --- -**הצהרת אחריות**: -מסמך זה תורגם באמצעות שירות תרגום AI [Co-op Translator](https://github.com/Azure/co-op-translator). למרות שאנו שואפים לדיוק, יש לקחת בחשבון שתרגומים אוטומטיים עשויים להכיל שגיאות או אי דיוקים. המסמך המקורי בשפתו המקורית צריך להיחשב כמקור סמכותי. עבור מידע קריטי, מומלץ להשתמש בתרגום מקצועי אנושי. אנו לא נושאים באחריות לכל אי הבנות או פרשנויות שגויות הנובעות משימוש בתרגום זה. \ No newline at end of file + +**כתב ויתור**: +מסמך זה תורגם באמצעות שירות תרגום AI [Co-op Translator](https://github.com/Azure/co-op-translator). למרות שאנו שואפים לדיוק, יש לקחת בחשבון שתרגומים אוטומטיים עשויים להכיל שגיאות או אי דיוקים. המסמך המקורי בשפתו המקורית צריך להיחשב כמקור סמכותי. עבור מידע קריטי, מומלץ להשתמש בתרגום מקצועי אנושי. איננו אחראים לאי הבנות או לפרשנויות שגויות הנובעות משימוש בתרגום זה. + \ No newline at end of file diff --git a/translations/it/1-getting-started-lessons/2-github-basics/README.md b/translations/it/1-getting-started-lessons/2-github-basics/README.md index 7190b09e..8a0846ed 100644 --- a/translations/it/1-getting-started-lessons/2-github-basics/README.md +++ b/translations/it/1-getting-started-lessons/2-github-basics/README.md @@ -1,52 +1,51 @@ # Introduzione a GitHub -Ciao, futuro sviluppatore! 👋 Pronto a unirti a milioni di programmatori in tutto il mondo? Sono davvero entusiasta di presentarti GitHub – pensalo come il social network per programmatori, ma invece di condividere foto del tuo pranzo, condividiamo codice e costruiamo cose incredibili insieme! +Ciao, futuro sviluppatore! 👋 Pronto a unirti a milioni di programmatori in tutto il mondo? Sono davvero entusiasta di presentarti GitHub – pensalo come un social network per programmatori, ma invece di condividere foto del tuo pranzo, condividiamo codice e costruiamo cose incredibili insieme! -Ecco cosa mi lascia senza parole: ogni app sul tuo telefono, ogni sito web che visiti e la maggior parte degli strumenti che imparerai a usare sono stati creati da team di sviluppatori che collaborano su piattaforme proprio come GitHub. Quell'app musicale che ami? Qualcuno come te ha contribuito a crearla. Quel gioco a cui non riesci a smettere di giocare? Sì, probabilmente è stato costruito grazie alla collaborazione su GitHub. E ora TU stai per imparare come far parte di questa straordinaria comunità! +Ecco cosa mi lascia sempre a bocca aperta: ogni app sul tuo telefono, ogni sito web che visiti e la maggior parte degli strumenti che imparerai a usare sono stati creati da team di sviluppatori che collaborano su piattaforme come GitHub. Quell'app musicale che ami? Qualcuno come te ha contribuito a crearla. Quel gioco a cui non riesci a smettere di giocare? Sì, probabilmente è stato costruito con la collaborazione su GitHub. E ora TU stai per imparare come far parte di questa straordinaria comunità! -So che all'inizio potrebbe sembrare tutto un po' complicato – ricordo di aver fissato la mia prima pagina GitHub pensando "Che cosa significa tutto questo?" Ma ecco il punto: ogni singolo sviluppatore ha iniziato esattamente dove sei tu ora. Alla fine di questa lezione, avrai il tuo repository GitHub personale (pensalo come la tua vetrina di progetti nel cloud), e saprai come salvare il tuo lavoro, condividerlo con gli altri e persino contribuire a progetti utilizzati da milioni di persone. +So che all'inizio potrebbe sembrare tutto un po' complicato – ricordo ancora quando ho guardato la mia prima pagina su GitHub pensando "Ma cosa significa tutto questo?". Ma ecco il punto: ogni singolo sviluppatore è partito esattamente da dove sei tu ora. Alla fine di questa lezione, avrai il tuo repository GitHub personale (pensalo come il tuo spazio per mostrare i tuoi progetti nel cloud) e saprai come salvare il tuo lavoro, condividerlo con gli altri e persino contribuire a progetti utilizzati da milioni di persone. -Faremo questo viaggio insieme, passo dopo passo. Niente fretta, niente pressione – solo tu, io e alcuni strumenti davvero fantastici che stanno per diventare i tuoi nuovi migliori amici! +Faremo questo viaggio insieme, un passo alla volta. Niente fretta, niente pressione – solo tu, io e alcuni strumenti davvero fantastici che stanno per diventare i tuoi nuovi migliori amici! ![Introduzione a GitHub](../../../../translated_images/webdev101-github.8846d7971abef6f947909b4f9d343e2a23778aa716ca6b9d71df7174ee5009ac.it.png) > Sketchnote di [Tomomi Imura](https://twitter.com/girlie_mac) ```mermaid journey - title Your GitHub Adventure Today - section Setup - Install Git: 4: You - Create Account: 5: You - First Repository: 5: You - section Master Git - Local Changes: 4: You - Commits & Pushes: 5: You - Branching: 4: You - section Collaborate - Fork Projects: 4: You - Pull Requests: 5: You - Open Source: 5: You + title La tua avventura su GitHub oggi + section Configurazione + Installa Git: 4: Tu + Crea Account: 5: Tu + Primo Repository: 5: Tu + section Padroneggia Git + Modifiche Locali: 4: Tu + Commit & Push: 5: Tu + Creazione di Branch: 4: Tu + section Collabora + Fork dei Progetti: 4: Tu + Pull Request: 5: Tu + Open Source: 5: Tu ``` - -## Quiz Pre-Lettura -[Quiz pre-lettura](https://ff-quizzes.netlify.app) +## Quiz Pre-Lezione +[Quiz pre-lezione](https://ff-quizzes.netlify.app) ## Introduzione -Prima di immergerci nelle cose davvero entusiasmanti, prepariamo il tuo computer per un po' di magia con GitHub! Pensalo come organizzare i tuoi materiali artistici prima di creare un capolavoro – avere gli strumenti giusti pronti rende tutto più semplice e molto più divertente. +Prima di immergerci nelle cose davvero entusiasmanti, prepariamo il tuo computer per un po' di magia con GitHub! Pensalo come organizzare i tuoi materiali artistici prima di creare un capolavoro – avere gli strumenti giusti pronti rende tutto più fluido e molto più divertente. -Ti guiderò personalmente attraverso ogni passaggio di configurazione, e ti prometto che non è così intimidatorio come potrebbe sembrare a prima vista. Se qualcosa non ti è chiaro subito, è assolutamente normale! Ricordo di aver configurato il mio primo ambiente di sviluppo e di sentirmi come se stessi cercando di decifrare geroglifici antichi. Ogni singolo sviluppatore è stato esattamente dove sei tu ora, chiedendosi se stava facendo tutto nel modo giusto. Spoiler: se sei qui a imparare, stai già facendo tutto nel modo giusto! 🌟 +Ti guiderò personalmente attraverso ogni passaggio di configurazione, e ti prometto che non è così intimidatorio come potrebbe sembrare a prima vista. Se qualcosa non ti è chiaro subito, è del tutto normale! Ricordo quando ho configurato il mio primo ambiente di sviluppo e mi sembrava di cercare di decifrare geroglifici antichi. Ogni singolo sviluppatore è stato esattamente dove sei tu ora, chiedendosi se stava facendo tutto nel modo giusto. Spoiler: se sei qui a imparare, stai già facendo tutto nel modo giusto! 🌟 -In questa lezione, affronteremo: +In questa lezione, vedremo: - come tracciare il lavoro che fai sul tuo computer - come lavorare su progetti con altre persone @@ -54,9 +53,9 @@ In questa lezione, affronteremo: ### Prerequisiti -Prepariamo il tuo computer per un po' di magia con GitHub! Non preoccuparti – questa configurazione è qualcosa che devi fare solo una volta, e poi sarai pronto per tutto il tuo percorso di programmazione. +Prepariamo il tuo computer per un po' di magia con GitHub! Non preoccuparti – questa configurazione è qualcosa che devi fare solo una volta, e poi sarai pronto per tutto il tuo viaggio nel mondo del coding. -Bene, iniziamo con le basi! Per prima cosa, dobbiamo verificare se Git è già installato sul tuo computer. Git è praticamente come avere un assistente super intelligente che ricorda ogni singola modifica che fai al tuo codice – molto meglio che premere freneticamente Ctrl+S ogni due secondi (ci siamo passati tutti!). +Bene, iniziamo con le basi! Prima di tutto, dobbiamo verificare se Git è già installato sul tuo computer. Git è praticamente come avere un assistente super-intelligente che ricorda ogni singola modifica che fai al tuo codice – molto meglio che premere freneticamente Ctrl+S ogni due secondi (ci siamo passati tutti!). Vediamo se Git è già installato digitando questo comando magico nel tuo terminale: `git --version` @@ -77,7 +76,7 @@ git config --list Avrai anche bisogno di un account GitHub, un editor di codice (come Visual Studio Code) e dovrai aprire il tuo terminale (o: prompt dei comandi). -Vai su [github.com](https://github.com/) e crea un account se non lo hai già fatto, oppure accedi e completa il tuo profilo. +Vai su [github.com](https://github.com/) e crea un account se non l'hai già fatto, oppure accedi e completa il tuo profilo. 💡 **Consiglio moderno**: Considera di configurare [chiavi SSH](https://docs.github.com/en/authentication/connecting-to-github-with-ssh) o di utilizzare [GitHub CLI](https://cli.github.com/) per un'autenticazione più semplice senza password. @@ -87,7 +86,7 @@ Vai su [github.com](https://github.com/) e crea un account se non lo hai già fa Avrai bisogno di una cartella con un progetto di codice sul tuo computer locale (laptop o PC) e di un repository pubblico su GitHub, che servirà come esempio per imparare a contribuire ai progetti degli altri. -### Proteggere il tuo codice +### Proteggere il Tuo Codice Parliamo un momento di sicurezza – ma non preoccuparti, non ti sommergeremo con cose spaventose! Pensa a queste pratiche di sicurezza come chiudere a chiave la tua auto o la tua casa. Sono abitudini semplici che diventano naturali e proteggono il tuo duro lavoro. @@ -102,89 +101,88 @@ Quando lavori con GitHub, è importante seguire le migliori pratiche di sicurezz | **Sicurezza del Repository** | Non commettere mai informazioni sensibili | Le chiavi API e le password non dovrebbero mai essere nei repository pubblici | | **Gestione delle Dipendenze** | Abilita Dependabot per gli aggiornamenti | Mantiene le tue dipendenze sicure e aggiornate | -> ⚠️ **Promemoria Critico di Sicurezza**: Non commettere mai chiavi API, password o altre informazioni sensibili in alcun repository. Usa variabili d'ambiente e file `.gitignore` per proteggere i dati sensibili. +> ⚠️ **Promemoria Critico di Sicurezza**: Non commettere mai chiavi API, password o altre informazioni sensibili in un repository. Usa variabili d'ambiente e file `.gitignore` per proteggere i dati sensibili. -**Configurazione Moderna di Autenticazione:** +**Configurazione Moderna dell'Autenticazione:** ```bash -# Generate SSH key (modern ed25519 algorithm) +# Genera chiave SSH (algoritmo moderno ed25519) ssh-keygen -t ed25519 -C "your_email@example.com" -# Set up Git to use SSH +# Configura Git per utilizzare SSH git remote set-url origin git@github.com:username/repository.git ``` -> 💡 **Consiglio Pro**: Le chiavi SSH eliminano la necessità di inserire ripetutamente le password e sono più sicure rispetto ai metodi di autenticazione tradizionali. +> 💡 **Consiglio Pro**: Le chiavi SSH eliminano la necessità di inserire ripetutamente le password e sono più sicure dei metodi di autenticazione tradizionali. --- -## Gestire il tuo codice come un professionista +## Gestire il Tuo Codice Come un Professionista Ok, QUI è dove le cose diventano davvero entusiasmanti! 🎉 Stiamo per imparare come tracciare e gestire il tuo codice come fanno i professionisti, e onestamente, questa è una delle mie cose preferite da insegnare perché è una vera svolta. -Immagina questo: stai scrivendo una storia incredibile e vuoi tenere traccia di ogni bozza, ogni brillante modifica e ogni momento "aspetta, è geniale!" lungo il percorso. Questo è esattamente ciò che Git fa per il tuo codice! È come avere il più incredibile taccuino che viaggia nel tempo e ricorda TUTTO – ogni battitura, ogni modifica, ogni momento "oops, ho rotto tutto" che puoi annullare istantaneamente. +Immagina questo: stai scrivendo una storia incredibile e vuoi tenere traccia di ogni bozza, ogni brillante modifica e ogni momento "aspetta, è geniale!" lungo il percorso. Questo è esattamente ciò che Git fa per il tuo codice! È come avere il taccuino più incredibile che viaggia nel tempo e ricorda TUTTO – ogni battitura, ogni modifica, ogni momento "oops, ho rotto tutto" che puoi annullare all'istante. -Sarò sincero – all'inizio potrebbe sembrare travolgente. Quando ho iniziato, pensavo "Perché non posso semplicemente salvare i miei file normalmente?" Ma fidati di me: una volta che capirai Git (e lo farai!), avrai uno di quei momenti di illuminazione in cui penserai "Come ho fatto a programmare senza questo?" È come scoprire di poter volare quando hai sempre camminato ovunque! +Sarò onesto – all'inizio potrebbe sembrare travolgente. Quando ho iniziato, pensavo "Perché non posso semplicemente salvare i miei file come al solito?". Ma fidati di me: una volta che Git ti sarà chiaro (e lo sarà!), avrai uno di quei momenti di illuminazione in cui penserai "Come ho fatto a programmare senza questo?". È come scoprire di poter volare dopo aver camminato ovunque per tutta la vita! -Supponiamo che tu abbia una cartella localmente con un progetto di codice e vuoi iniziare a tracciare i tuoi progressi usando git - il sistema di controllo delle versioni. Alcuni paragonano l'uso di git a scrivere una lettera d'amore al tuo futuro io. Leggendo i tuoi messaggi di commit giorni, settimane o mesi dopo, sarai in grado di ricordare perché hai preso una decisione o di "annullare" una modifica – ovviamente, se scrivi buoni "messaggi di commit". +Supponiamo che tu abbia una cartella locale con un progetto di codice e voglia iniziare a tracciare i tuoi progressi usando git – il sistema di controllo delle versioni. Alcuni paragonano l'uso di git a scrivere una lettera d'amore al tuo futuro io. Leggendo i tuoi messaggi di commit giorni, settimane o mesi dopo, sarai in grado di ricordare perché hai preso una decisione o "annullare" una modifica – ovviamente, quando scrivi buoni "messaggi di commit". ```mermaid flowchart TD - A[📁 Your Project Files] --> B{Is it a Git Repository?} + A[📁 I file del tuo progetto] --> B{È un repository Git?} B -->|No| C[git init] - B -->|Yes| D[Make Changes] + B -->|Sì| D[Apporta modifiche] C --> D D --> E[git add .] - E --> F["git commit -m 'message'"] + E --> F["git commit -m 'messaggio'"] F --> G[git push] - G --> H[🌟 Code on GitHub!] + G --> H[🌟 Codice su GitHub!] - H --> I{Want to collaborate?} - I -->|Yes| J[Fork & Clone] + H --> I{Vuoi collaborare?} + I -->|Sì| J[Fork & Clone] I -->|No| D - J --> K[Create Branch] - K --> L[Make Changes] + J --> K[Crea Branch] + K --> L[Apporta modifiche] L --> M[Pull Request] - M --> N[🎉 Contributing!] + M --> N[🎉 Contribuendo!] style A fill:#fff59d style H fill:#c8e6c9 style N fill:#ff4081,color:#fff ``` +### Compito: Crea il Tuo Primo Repository! -### Compito: Crea il tuo primo repository! - -> 🎯 **La tua missione (e sono così entusiasta per te!)**: Creeremo insieme il tuo primo repository GitHub! Alla fine di questa attività, avrai il tuo piccolo angolo di internet dove vive il tuo codice, e avrai fatto il tuo primo "commit" (nel linguaggio degli sviluppatori, significa salvare il tuo lavoro in modo davvero intelligente). +> 🎯 **La Tua Missione (e sono così entusiasta per te!)**: Creeremo insieme il tuo primo repository GitHub! Quando avremo finito, avrai il tuo piccolo angolo di internet dove vive il tuo codice e avrai fatto il tuo primo "commit" (nel linguaggio degli sviluppatori, significa salvare il tuo lavoro in un modo davvero intelligente). > > Questo è davvero un momento speciale – stai per unirti ufficialmente alla comunità globale degli sviluppatori! Ricordo ancora l'emozione di creare il mio primo repository e pensare "Wow, lo sto davvero facendo!" -Camminiamo insieme attraverso questa avventura, passo dopo passo. Prenditi il tuo tempo con ogni parte – non c'è premio per chi corre, e ti prometto che ogni singolo passaggio avrà senso. Ricorda, ogni superstar della programmazione che ammiri è stata una volta seduta esattamente dove sei tu, pronta a creare il suo primo repository. Quanto è fantastico? +Facciamo questa avventura insieme, passo dopo passo. Prenditi il tuo tempo per ogni parte – non c'è un premio per chi corre, e ti prometto che ogni singolo passaggio avrà senso. Ricorda, ogni superstar del coding che ammiri è stata una volta esattamente dove sei tu, pronta a creare il suo primo repository. Non è fantastico? > Guarda il video > -> [![Video sui fondamenti di Git e GitHub](https://img.youtube.com/vi/9R31OUPpxU4/0.jpg)](https://www.youtube.com/watch?v=9R31OUPpxU4) +> [![Video su Git e GitHub](https://img.youtube.com/vi/9R31OUPpxU4/0.jpg)](https://www.youtube.com/watch?v=9R31OUPpxU4) -**Facciamolo insieme:** +**Facciamolo Insieme:** -1. **Crea il tuo repository su GitHub**. Vai su GitHub.com e cerca il pulsante verde brillante **New** (o il segno **+** nell'angolo in alto a destra). Cliccaci sopra e seleziona **New repository**. +1. **Crea il tuo repository su GitHub**. Vai su GitHub.com e cerca quel pulsante verde brillante **New** (o il segno **+** in alto a destra). Cliccaci sopra e seleziona **New repository**. Ecco cosa fare: - 1. Dai un nome al tuo repository – scegli qualcosa di significativo per te! + 1. Dai un nome al tuo repository – scegline uno che abbia significato per te! 1. Aggiungi una descrizione se vuoi (aiuta gli altri a capire di cosa tratta il tuo progetto) - 1. Decidi se vuoi che sia pubblico (tutti possono vederlo) o privato (solo per te) + 1. Decidi se vuoi che sia pubblico (visibile a tutti) o privato (solo per te) 1. Ti consiglio di selezionare la casella per aggiungere un file README – è come la prima pagina del tuo progetto 1. Clicca su **Create repository** e festeggia – hai appena creato il tuo primo repository! 🎉 -2. **Naviga nella tua cartella di progetto**. Ora apriamo il terminale (non preoccuparti, non è così spaventoso come sembra!). Dobbiamo dire al tuo computer dove si trovano i file del tuo progetto. Digita questo comando: +2. **Vai alla tua cartella del progetto**. Ora apriamo il terminale (non preoccuparti, non è così spaventoso come sembra!). Dobbiamo dire al tuo computer dove si trovano i file del tuo progetto. Digita questo comando: ```bash cd [name of your folder] ``` **Cosa stiamo facendo qui:** - - Stiamo praticamente dicendo "Ehi computer, portami alla mia cartella di progetto" - - È come aprire una cartella specifica sul desktop, ma lo stiamo facendo con comandi testuali - - Sostituisci `[name of your folder]` con il nome effettivo della tua cartella di progetto + - Stiamo praticamente dicendo "Ehi computer, portami alla mia cartella del progetto" + - È come aprire una cartella specifica sul desktop, ma lo facciamo con comandi testuali + - Sostituisci `[name of your folder]` con il nome effettivo della tua cartella del progetto 3. **Trasforma la tua cartella in un repository Git**. Qui avviene la magia! Digita: @@ -192,10 +190,10 @@ Camminiamo insieme attraverso questa avventura, passo dopo passo. Prenditi il tu git init ``` - **Ecco cosa è appena successo (cose davvero interessanti!):** + **Ecco cosa è appena successo (cose davvero fighe!):** - Git ha appena creato una cartella nascosta `.git` nel tuo progetto – non la vedrai, ma è lì! - La tua cartella normale è ora un "repository" che può tracciare ogni modifica che fai - - Pensalo come dare alla tua cartella superpoteri per ricordare tutto + - Pensalo come dare superpoteri alla tua cartella per ricordare tutto 4. **Controlla cosa sta succedendo**. Vediamo cosa pensa Git del tuo progetto in questo momento: @@ -218,12 +216,12 @@ Camminiamo insieme attraverso questa avventura, passo dopo passo. Prenditi il tu **Non farti prendere dal panico! Ecco cosa significa:** - I file in **rosso** sono file che hanno modifiche ma non sono ancora pronti per essere salvati - - I file in **verde** (quando li vedi) sono pronti per essere salvati - - Git ti sta aiutando dicendoti esattamente cosa puoi fare dopo + - I file in **verde** (quando li vedrai) sono pronti per essere salvati + - Git è utile e ti dice esattamente cosa puoi fare dopo > 💡 **Consiglio pro**: Il comando `git status` è il tuo migliore amico! Usalo ogni volta che sei confuso su cosa sta succedendo. È come chiedere a Git "Ehi, qual è la situazione in questo momento?" -5. **Prepara i tuoi file per il salvataggio** (questo si chiama "staging"): +5. **Prepara i tuoi file per essere salvati** (questo si chiama "staging"): ```bash git add . @@ -232,7 +230,7 @@ Camminiamo insieme attraverso questa avventura, passo dopo passo. Prenditi il tu **Cosa abbiamo appena fatto:** - Abbiamo detto a Git "Ehi, voglio includere TUTTI i miei file nel prossimo salvataggio" - Il `.` è come dire "tutto in questa cartella" - - Ora i tuoi file sono "staged" e pronti per il prossimo passaggio + - Ora i tuoi file sono "in stage" e pronti per il prossimo passaggio **Vuoi essere più selettivo?** Puoi aggiungere solo file specifici: @@ -245,19 +243,19 @@ Camminiamo insieme attraverso questa avventura, passo dopo passo. Prenditi il tu - Ti aiuta a organizzare il tuo lavoro in blocchi logici - Rende più facile capire cosa è cambiato e quando - **Hai cambiato idea?** Nessun problema! Puoi rimuovere i file dallo staging in questo modo: + **Hai cambiato idea?** Nessun problema! Puoi rimuovere i file dallo stage così: ```bash - # Unstage everything + # Rimuovi tutto dalla fase di staging git reset - # Unstage just one file + # Rimuovi dalla fase di staging solo un file git reset [file name] ``` Non preoccuparti – questo non elimina il tuo lavoro, semplicemente toglie i file dalla "pila pronta per il salvataggio". -6. **Salva il tuo lavoro in modo permanente** (fai il tuo primo commit!): +6. **Salva il tuo lavoro in modo permanente** (facendo il tuo primo commit!): ```bash git commit -m "first commit" @@ -266,52 +264,52 @@ Camminiamo insieme attraverso questa avventura, passo dopo passo. Prenditi il tu **🎉 Congratulazioni! Hai appena fatto il tuo primo commit!** **Ecco cosa è appena successo:** - - Git ha fatto una "istantanea" di tutti i file staged in questo momento preciso + - Git ha scattato una "istantanea" di tutti i file in stage in questo momento esatto - Il tuo messaggio di commit "first commit" spiega di cosa tratta questo punto di salvataggio - - Git ha dato a questa istantanea un ID unico, così puoi sempre trovarla in seguito - - Hai ufficialmente iniziato a tracciare la storia del tuo progetto! + - Git ha assegnato a questa istantanea un ID unico, così puoi sempre trovarla in seguito + - Hai ufficialmente iniziato a tracciare la cronologia del tuo progetto! - > 💡 **Messaggi di commit futuri**: Per i tuoi prossimi commit, sii più descrittivo! Invece di "updated stuff", prova "Aggiunto modulo di contatto alla homepage" o "Risolto bug nel menu di navigazione". Il tuo futuro io ti ringrazierà! + > 💡 **Messaggi di commit futuri**: Per i tuoi prossimi commit, sii più descrittivo! Invece di "aggiornato roba", prova "Aggiunto modulo di contatto alla homepage" o "Risolto bug nel menu di navigazione". Il tuo futuro io ti ringrazierà! 7. **Collega il tuo progetto locale a GitHub**. Al momento, il tuo progetto esiste solo sul tuo computer. Colleghiamolo al tuo repository GitHub così puoi condividerlo con il mondo! - Per prima cosa, vai alla pagina del tuo repository GitHub e copia l'URL. Poi torna qui e digita: + Prima, vai alla pagina del tuo repository GitHub e copia l'URL. Poi torna qui e digita: ```bash git remote add origin https://github.com/username/repository_name.git ``` (Sostituisci quell'URL con l'URL effettivo del tuo repository!) -**Cosa abbiamo appena fatto:** -- Abbiamo creato una connessione tra il tuo progetto locale e il tuo repository GitHub. -- "Origin" è solo un soprannome per il tuo repository GitHub – è come aggiungere un contatto al tuo telefono. -- Ora il tuo Git locale sa dove inviare il tuo codice quando sei pronto a condividerlo. -💡 **Modo più semplice**: Se hai installato GitHub CLI, puoi fare tutto questo con un solo comando: + **Cosa abbiamo appena fatto:** + - Abbiamo creato una connessione tra il tuo progetto locale e il tuo repository GitHub + - "Origin" è solo un soprannome per il tuo repository GitHub – è come aggiungere un contatto al tuo telefono + - Ora il tuo Git locale sa dove inviare il tuo codice quando sei pronto a condividerlo + + 💡 **Metodo più semplice**: Se hai installato GitHub CLI, puoi fare tutto questo con un solo comando: ```bash gh repo create my-repo --public --push --source=. ``` - 8. **Invia il tuo codice su GitHub** (il grande momento!): ```bash git push -u origin main ``` -**🚀 Ecco fatto! Stai caricando il tuo codice su GitHub!** - -**Cosa sta succedendo:** -- I tuoi commit stanno viaggiando dal tuo computer a GitHub. -- Il flag `-u` imposta una connessione permanente, rendendo più semplici i futuri push. -- "main" è il nome del tuo branch principale (come la cartella principale). -- Dopo questo, per i futuri upload ti basterà digitare `git push`! + **🚀 Ecco fatto! Stai caricando il tuo codice su GitHub!** + + **Cosa sta succedendo:** + - I tuoi commit stanno viaggiando dal tuo computer a GitHub + - Il flag `-u` stabilisce una connessione permanente, rendendo più facili i futuri push + - "main" è il nome del tuo branch principale (come la cartella principale) + - Dopo questo, per i futuri upload ti basterà digitare `git push`! -💡 **Nota veloce**: Se il tuo branch si chiama in un altro modo (come "master"), usa quel nome. Puoi verificarlo con `git branch --show-current`. + 💡 **Nota veloce**: Se il tuo branch si chiama diversamente (come "master"), usa quel nome. Puoi verificarlo con `git branch --show-current`. -9. **Il tuo nuovo ritmo quotidiano di coding** (qui diventa una routine!): +9. **Il tuo nuovo ritmo quotidiano di coding** (qui diventa coinvolgente!): -Da ora in poi, ogni volta che apporti modifiche al tuo progetto, segui questa semplice sequenza di tre passaggi: + Da ora in poi, ogni volta che apporti modifiche al tuo progetto, segui questa semplice routine in tre passaggi: ```bash git add . @@ -319,18 +317,18 @@ Da ora in poi, ogni volta che apporti modifiche al tuo progetto, segui questa se git push ``` -**Questo diventa il tuo ritmo di coding:** -- Fai delle modifiche fantastiche al tuo codice ✨ -- Metti in stage con `git add` ("Ehi Git, presta attenzione a queste modifiche!") -- Salvale con `git commit` e un messaggio descrittivo (il te del futuro ti ringrazierà!) -- Condividile con il mondo usando `git push` 🚀 -- Ripeti – seriamente, diventa naturale come respirare! + **Questo diventa il tuo battito cardiaco da programmatore:** + - Apporta modifiche straordinarie al tuo codice ✨ + - Metti in stage con `git add` ("Ehi Git, presta attenzione a queste modifiche!") + - Salva con `git commit` e un messaggio descrittivo (il te del futuro ti ringrazierà!) + - Condividi con il mondo usando `git push` 🚀 + - Ripeti – davvero, diventa naturale come respirare! -Adoro questo workflow perché è come avere più punti di salvataggio in un videogioco. Hai fatto una modifica che ti piace? Commit! Vuoi provare qualcosa di rischioso? Nessun problema – puoi sempre tornare al tuo ultimo commit se qualcosa va storto! + Amo questo workflow perché è come avere più punti di salvataggio in un videogioco. Hai fatto una modifica che ti piace? Commit! Vuoi provare qualcosa di rischioso? Nessun problema – puoi sempre tornare al tuo ultimo commit se le cose vanno male! -> 💡 **Consiglio**: Potresti anche voler adottare un file `.gitignore` per evitare che file che non vuoi tracciare finiscano su GitHub - come quel file di appunti che conservi nella stessa cartella ma che non ha posto in un repository pubblico. Puoi trovare modelli per file `.gitignore` su [.gitignore templates](https://github.com/github/gitignore) o crearne uno usando [gitignore.io](https://www.toptal.com/developers/gitignore). + > 💡 **Consiglio**: Potresti anche voler adottare un file `.gitignore` per evitare che file che non vuoi tracciare compaiano su GitHub - come quel file di appunti che conservi nella stessa cartella ma che non ha posto in un repository pubblico. Puoi trovare modelli per file `.gitignore` su [.gitignore templates](https://github.com/github/gitignore) o crearne uno usando [gitignore.io](https://www.toptal.com/developers/gitignore). -### 🧠 **Primo check-in del repository: come ti sei sentito?** +### 🧠 **Primo check-in del repository: Come ti sei sentito?** **Prenditi un momento per festeggiare e riflettere:** - Come ti sei sentito nel vedere il tuo codice apparire su GitHub per la prima volta? @@ -339,37 +337,37 @@ Adoro questo workflow perché è come avere più punti di salvataggio in un vide ```mermaid stateDiagram-v2 - [*] --> LocalFiles: Create project + [*] --> LocalFiles: Crea progetto LocalFiles --> Staged: git add . Staged --> Committed: git commit Committed --> GitHub: git push - GitHub --> [*]: Success! 🎉 + GitHub --> [*]: Successo! 🎉 note right of Staged - Files ready to save + File pronti per essere salvati end note note right of Committed - Snapshot created + Snapshot creato end note ``` +> **Ricorda**: Anche gli sviluppatori esperti a volte dimenticano i comandi esatti. Far diventare questo workflow un'abitudine richiede pratica - stai andando alla grande! -> **Ricorda**: Anche gli sviluppatori esperti a volte dimenticano i comandi esatti. Far diventare questo workflow un'abitudine richiede pratica – stai andando alla grande! - -#### Workflow moderni con Git +#### Workflow Git moderni Considera di adottare queste pratiche moderne: -- **Conventional Commits**: Usa un formato standardizzato per i messaggi di commit come `feat:`, `fix:`, `docs:`, ecc. Scopri di più su [conventionalcommits.org](https://www.conventionalcommits.org/). -- **Commit atomici**: Fai in modo che ogni commit rappresenti una singola modifica logica. -- **Commit frequenti**: Fai commit frequenti con messaggi descrittivi piuttosto che commit grandi e poco frequenti. +- **Conventional Commits**: Usa un formato standardizzato per i messaggi di commit come `feat:`, `fix:`, `docs:`, ecc. Scopri di più su [conventionalcommits.org](https://www.conventionalcommits.org/) +- **Commit atomici**: Fai in modo che ogni commit rappresenti un singolo cambiamento logico +- **Commit frequenti**: Effettua commit frequenti con messaggi descrittivi piuttosto che commit grandi e poco frequenti #### Messaggi di commit -Una grande riga di soggetto per un commit di Git completa la seguente frase: -Se applicato, questo commit . +Una grande riga di soggetto per un commit Git completa la seguente frase: +Se applicato, questo commit -Per il soggetto usa il tempo presente imperativo: "modifica" e non "modificato" né "modifiche". Come nel soggetto, anche nel corpo (opzionale) usa il tempo presente imperativo. Il corpo dovrebbe includere la motivazione del cambiamento e confrontarla con il comportamento precedente. Stai spiegando il `perché`, non il `come`. +Per il soggetto usa l'imperativo, tempo presente: "modifica" non "modificato" né "modifiche". +Come nel soggetto, anche nel corpo (opzionale) usa l'imperativo, tempo presente. Il corpo dovrebbe includere la motivazione del cambiamento e confrontarla con il comportamento precedente. Stai spiegando il `perché`, non il `come`. ✅ Prenditi qualche minuto per navigare su GitHub. Riesci a trovare un messaggio di commit davvero ben fatto? Riesci a trovarne uno molto minimale? Quali informazioni pensi siano le più importanti e utili da trasmettere in un messaggio di commit? @@ -377,41 +375,40 @@ Per il soggetto usa il tempo presente imperativo: "modifica" e non "modificato" Preparati perché QUI è dove GitHub diventa assolutamente magico! 🪄 Hai imparato a gestire il tuo codice, ma ora stiamo entrando nella mia parte preferita – collaborare con persone straordinarie da tutto il mondo. -Immagina questo: ti svegli domani e scopri che qualcuno a Tokyo ha migliorato il tuo codice mentre dormivi. Poi qualcuno a Berlino risolve un bug su cui eri bloccato. Nel pomeriggio, uno sviluppatore a São Paulo ha aggiunto una funzionalità a cui non avevi nemmeno pensato. Non è fantascienza – è solo un normale martedì nell'universo di GitHub! +Immagina questo: ti svegli domani e scopri che qualcuno a Tokyo ha migliorato il tuo codice mentre dormivi. Poi qualcuno a Berlino risolve un bug su cui eri bloccato. Nel pomeriggio, uno sviluppatore a São Paulo aggiunge una funzionalità a cui non avevi nemmeno pensato. Non è fantascienza – è solo un normale martedì nell'universo di GitHub! -Quello che mi entusiasma davvero è che le competenze di collaborazione che stai per imparare? Sono ESATTAMENTE gli stessi workflow che i team di Google, Microsoft e delle tue startup preferite usano ogni singolo giorno. Non stai solo imparando uno strumento interessante – stai imparando il linguaggio segreto che fa funzionare insieme l'intero mondo del software. +Quello che mi entusiasma davvero è che le competenze di collaborazione che stai per imparare? Sono gli STESSI workflow che i team di Google, Microsoft e le tue startup preferite usano ogni singolo giorno. Non stai solo imparando uno strumento interessante – stai imparando il linguaggio segreto che fa funzionare insieme l'intero mondo del software. Seriamente, una volta che provi l'emozione di vedere qualcuno unire la tua prima pull request, capirai perché gli sviluppatori si appassionano così tanto all'open source. È come far parte del più grande e creativo progetto di squadra del mondo! > Guarda il video > -> [![Video sui concetti base di Git e GitHub](https://img.youtube.com/vi/bFCM-PC3cu8/0.jpg)](https://www.youtube.com/watch?v=bFCM-PC3cu8) +> [![Video sui fondamenti di Git e GitHub](https://img.youtube.com/vi/bFCM-PC3cu8/0.jpg)](https://www.youtube.com/watch?v=bFCM-PC3cu8) Il motivo principale per mettere le cose su GitHub era rendere possibile collaborare con altri sviluppatori. ```mermaid flowchart LR - A[🔍 Find Project] --> B[🍴 Fork Repository] - B --> C[📥 Clone to Local] - C --> D[🌿 Create Branch] - D --> E[✏️ Make Changes] - E --> F[💾 Commit Changes] + A[🔍 Trova Progetto] --> B[🍴 Fork Repository] + B --> C[📥 Clona in Locale] + C --> D[🌿 Crea Branch] + D --> E[✏️ Apporta Modifiche] + E --> F[💾 Commit Modifiche] F --> G[📤 Push Branch] - G --> H[🔄 Create Pull Request] - H --> I{Maintainer Review} - I -->|✅ Approved| J[🎉 Merge!] - I -->|❓ Changes Requested| K[📝 Make Updates] + G --> H[🔄 Crea Pull Request] + H --> I{Revisione del Maintainer} + I -->|✅ Approvato| J[🎉 Merge!] + I -->|❓ Modifiche Richieste| K[📝 Apporta Aggiornamenti] K --> F - J --> L[🧹 Clean Up Branches] + J --> L[🧹 Pulisci Branch] style A fill:#e3f2fd style J fill:#e8f5e8 style L fill:#fff3e0 ``` +Nel tuo repository, vai su `Insights > Community` per vedere come il tuo progetto si confronta con gli standard di comunità raccomandati. -Nel tuo repository, vai su `Insights > Community` per vedere come il tuo progetto si confronta con gli standard della comunità raccomandati. - -Vuoi far sembrare il tuo repository professionale e accogliente? Vai al tuo repository e clicca su `Insights > Community`. Questa funzione interessante ti mostra come il tuo progetto si confronta con ciò che la comunità GitHub considera "buone pratiche per i repository". +Vuoi rendere il tuo repository professionale e accogliente? Vai al tuo repository e clicca su `Insights > Community`. Questa funzione interessante ti mostra come il tuo progetto si confronta con ciò che la comunità GitHub considera "buone pratiche per i repository". > 🎯 **Fai brillare il tuo progetto**: Un repository ben organizzato con una buona documentazione è come avere una vetrina pulita e accogliente. Dice alle persone che tieni al tuo lavoro e le invoglia a contribuire! @@ -419,10 +416,10 @@ Vuoi far sembrare il tuo repository professionale e accogliente? Vai al tuo repo | Cosa aggiungere | Perché è importante | Cosa fa per te | |------------------|---------------------|----------------| -| **Descrizione** | La prima impressione conta! | Le persone capiscono subito di cosa tratta il tuo progetto | -| **README** | La pagina principale del tuo progetto | Come una guida amichevole per i nuovi visitatori | -| **Linee guida per i contributi** | Mostra che accetti aiuto | Le persone sanno esattamente come possono aiutarti | -| **Codice di condotta** | Crea un ambiente amichevole | Tutti si sentono benvenuti a partecipare | +| **Descrizione** | La prima impressione conta! | Le persone capiscono subito cosa fa il tuo progetto | +| **README** | La pagina principale del tuo progetto | Come una guida turistica amichevole per i nuovi visitatori | +| **Linee guida per contribuire** | Mostra che accetti aiuto | Le persone sanno esattamente come possono aiutarti | +| **Codice di condotta** | Crea uno spazio amichevole | Tutti si sentono benvenuti a partecipare | | **Licenza** | Chiarezza legale | Gli altri sanno come possono usare il tuo codice | | **Politica di sicurezza** | Mostra che sei responsabile | Dimostra pratiche professionali | @@ -431,13 +428,13 @@ Vuoi far sembrare il tuo repository professionale e accogliente? Vai al tuo repo **Funzionalità moderne di GitHub da esplorare:** 🤖 **Automazione & CI/CD:** -- **GitHub Actions** per test e distribuzione automatizzati. -- **Dependabot** per aggiornamenti automatici delle dipendenze. +- **GitHub Actions** per test e deployment automatici +- **Dependabot** per aggiornamenti automatici delle dipendenze -💬 **Comunità & Gestione dei progetti:** -- **GitHub Discussions** per conversazioni comunitarie oltre ai problemi. -- **GitHub Projects** per la gestione dei progetti in stile kanban. -- **Regole di protezione dei branch** per garantire standard di qualità del codice. +💬 **Comunità & Gestione Progetti:** +- **GitHub Discussions** per conversazioni comunitarie oltre ai problemi +- **GitHub Projects** per gestione di progetti in stile kanban +- **Regole di protezione dei branch** per garantire standard di qualità del codice Tutte queste risorse saranno utili per integrare nuovi membri del team. E sono tipicamente le cose che i nuovi collaboratori guardano prima ancora di esaminare il tuo codice, per capire se il tuo progetto è il posto giusto dove investire il loro tempo. @@ -445,20 +442,20 @@ Tutte queste risorse saranno utili per integrare nuovi membri del team. E sono t ### Compito: Unire del codice -I documenti di contributo aiutano le persone a contribuire al progetto. Spiegano quali tipi di contributi stai cercando e come funziona il processo. I collaboratori dovranno seguire una serie di passaggi per poter contribuire al tuo repository su GitHub: +I documenti per contribuire aiutano le persone a contribuire al progetto. Spiegano quali tipi di contributi stai cercando e come funziona il processo. I collaboratori dovranno seguire una serie di passaggi per poter contribuire al tuo repository su GitHub: -1. **Fare un fork del tuo repository**. Probabilmente vorrai che le persone _facciano un fork_ del tuo progetto. Fare un fork significa creare una replica del tuo repository sul loro profilo GitHub. -1. **Clonare**. Da lì, cloneranno il progetto sulla loro macchina locale. -1. **Creare un branch**. Vorrai chiedere loro di creare un _branch_ per il loro lavoro. -1. **Concentrarsi su un'area specifica**. Chiedi ai collaboratori di concentrarsi su un'area alla volta – in questo modo aumentano le possibilità che tu possa _unire_ il loro lavoro. Immagina che scrivano una correzione di bug, aggiungano una nuova funzionalità e aggiornino diversi test – cosa succede se vuoi, o puoi implementare solo 2 su 3, o 1 su 3 modifiche? +1. **Fork del tuo repository** Probabilmente vorrai che le persone _forkino_ il tuo progetto. Forkare significa creare una replica del tuo repository sul loro profilo GitHub. +1. **Clone**. Da lì cloneranno il progetto sulla loro macchina locale. +1. **Creare un branch**. Vorrai chiedere loro di creare un _branch_ per il loro lavoro. +1. **Concentrarsi su un'area**. Chiedi ai collaboratori di concentrarsi su un contributo alla volta - in questo modo le probabilità che tu possa _unire_ il loro lavoro sono più alte. Immagina che scrivano una correzione di bug, aggiungano una nuova funzionalità e aggiornino diversi test - cosa succede se vuoi, o puoi implementare solo 2 su 3, o 1 su 3 modifiche? ✅ Immagina una situazione in cui i branch sono particolarmente critici per scrivere e distribuire buon codice. Quali casi d'uso ti vengono in mente? -> Nota, sii il cambiamento che vuoi vedere nel mondo e crea branch anche per il tuo lavoro. Qualsiasi commit che fai sarà fatto sul branch su cui sei attualmente "posizionato". Usa `git status` per vedere quale branch è attivo. +> Nota, sii il cambiamento che vuoi vedere nel mondo e crea branch anche per il tuo lavoro. Qualsiasi commit che fai sarà fatto sul branch su cui sei attualmente "checkout". Usa `git status` per vedere quale branch è. -Passiamo attraverso un workflow per i collaboratori. Supponiamo che il collaboratore abbia già fatto il _fork_ e il _clone_ del repository, quindi ha un repository Git pronto per essere utilizzato sulla sua macchina locale: +Passiamo attraverso un workflow per i collaboratori. Supponiamo che il collaboratore abbia già _forkato_ e _clonato_ il repository, quindi ha un repository Git pronto per essere lavorato sulla sua macchina locale: -1. **Creare un branch**. Usa il comando `git branch` per creare un branch che conterrà le modifiche che intende contribuire: +1. **Creare un branch**. Usa il comando `git branch` per creare un branch che conterrà le modifiche che intendono contribuire: ```bash git branch [branch-name] @@ -469,7 +466,6 @@ Passiamo attraverso un workflow per i collaboratori. Supponiamo che il collabora git switch -c [branch-name] ``` - 1. **Passare al branch di lavoro**. Passa al branch specificato e aggiorna la directory di lavoro con `git switch`: ```bash @@ -478,7 +474,7 @@ Passiamo attraverso un workflow per i collaboratori. Supponiamo che il collabora > 💡 **Nota moderna**: `git switch` è il sostituto moderno di `git checkout` per cambiare branch. È più chiaro e sicuro per i principianti. -1. **Lavorare**. A questo punto vuoi aggiungere le tue modifiche. Non dimenticare di comunicarlo a Git con i seguenti comandi: +1. **Fare il lavoro**. A questo punto vuoi aggiungere le tue modifiche. Non dimenticare di dirlo a Git con i seguenti comandi: ```bash git add . @@ -494,20 +490,19 @@ Passiamo attraverso un workflow per i collaboratori. Supponiamo che il collabora git pull ``` - A questo punto vuoi assicurarti che eventuali _conflitti_, situazioni in cui Git non riesce facilmente a _unire_ le modifiche, si verifichino nel tuo branch di lavoro. Pertanto, esegui i seguenti comandi: + A questo punto vuoi assicurarti che eventuali _conflitti_, situazioni in cui Git non riesce facilmente a _unire_ le modifiche, si verifichino nel tuo branch di lavoro. Pertanto esegui i seguenti comandi: ```bash git switch [branch_name] git merge main ``` - Il comando `git merge main` porterà tutte le modifiche da `main` nel tuo branch. Speriamo che tu possa continuare senza problemi. In caso contrario, VS Code ti dirà dove Git è _confuso_ e tu modificherai i file interessati per indicare quale contenuto è più accurato. + Il comando `git merge main` porterà tutte le modifiche da `main` nel tuo branch. Si spera che tu possa semplicemente continuare. Se no, VS Code ti dirà dove Git è _confuso_ e tu modifichi i file interessati per indicare quale contenuto è più accurato. 💡 **Alternativa moderna**: Considera di usare `git rebase` per una cronologia più pulita: ```bash git rebase main ``` - Questo riproduce i tuoi commit sopra l'ultimo branch main, creando una cronologia lineare. 1. **Invia il tuo lavoro su GitHub**. Inviare il tuo lavoro su GitHub significa due cose. Fare il push del tuo branch sul tuo repository e poi aprire una PR, Pull Request. @@ -521,43 +516,42 @@ Passiamo attraverso un workflow per i collaboratori. Supponiamo che il collabora ### 🤝 **Verifica delle competenze di collaborazione: Pronto a lavorare con gli altri?** **Vediamo come ti senti riguardo alla collaborazione:** -- L'idea di fare fork e pull request ti è chiara ora? +- L'idea di fork e pull request ti è chiara ora? - Qual è una cosa sul lavoro con i branch che vuoi praticare di più? - Quanto ti senti a tuo agio nel contribuire al progetto di qualcun altro? ```mermaid mindmap - root((Git Collaboration)) + root((Collaborazione Git)) Branching - Feature branches - Bug fix branches - Experimental work + Rami delle funzionalità + Rami di correzione bug + Lavoro sperimentale Pull Requests - Code review - Discussion - Testing - Best Practices - Clear commit messages - Small focused changes - Good documentation + Revisione del codice + Discussione + Test + Migliori Pratiche + Messaggi di commit chiari + Modifiche piccole e mirate + Buona documentazione ``` +> **Incoraggiamento**: Ogni singolo sviluppatore che ammiri era una volta nervoso per la sua prima pull request. La comunità GitHub è incredibilmente accogliente per i nuovi arrivati! -> **Iniezione di fiducia**: Ogni singolo sviluppatore che ammiri era una volta nervoso per la sua prima pull request. La comunità di GitHub è incredibilmente accogliente per i nuovi arrivati! - -1. **Apri una PR**. Successivamente, vuoi aprire una PR. Lo fai navigando nel repository forkato su GitHub. Vedrai un'indicazione su GitHub che ti chiede se vuoi creare una nuova PR, clicca su quella e verrai portato a un'interfaccia dove puoi modificare il titolo del messaggio di commit, fornire una descrizione più adatta. Ora il manutentore del repository che hai forkato vedrà questa PR e _incrociamo le dita_ apprezzerà e _unirà_ la tua PR. Ora sei un collaboratore, evviva :) +1. **Apri una PR**. Successivamente, vuoi aprire una PR. Lo fai navigando nel repository forkato su GitHub. Vedrai un'indicazione su GitHub dove ti chiede se vuoi creare una nuova PR, clicchi lì e vieni portato a un'interfaccia dove puoi modificare il titolo del messaggio di commit, dare una descrizione più adatta. Ora il manutentore del repository che hai forkato vedrà questa PR e _incrociamo le dita_ apprezzerà e _unirà_ la tua PR. Ora sei un collaboratore, evviva :) 💡 **Consiglio moderno**: Puoi anche creare PR usando GitHub CLI: ```bash gh pr create --title "Your PR title" --body "Description of changes" ``` - 🔧 **Migliori pratiche per le PR**: - - Collega problemi correlati usando parole chiave come "Fixes #123". - - Aggiungi screenshot per modifiche all'interfaccia utente. - - Richiedi revisori specifici. - - Usa PR in bozza per lavori in corso. - - Assicurati che tutti i controlli CI siano superati prima di richiedere una revisione. -1. **Pulizia**. È considerata una buona pratica _pulire_ dopo aver completato con successo il merge di una PR. Vuoi pulire sia il tuo branch locale che il branch che hai caricato su GitHub. Per prima cosa, eliminiamolo localmente con il seguente comando: + 🔧 **Best practices per le PR**: + - Collega problemi correlati usando parole chiave come "Fixes #123" + - Aggiungi screenshot per modifiche all'interfaccia utente + - Richiedi revisori specifici + - Usa PR in bozza per lavori in corso + - Assicurati che tutti i controlli CI siano superati prima di richiedere la revisione +1. **Pulizia**. È considerata una buona pratica _fare pulizia_ dopo aver unito con successo una PR. Vuoi ripulire sia il tuo branch locale che il branch che hai caricato su GitHub. Per prima cosa, eliminiamolo localmente con il seguente comando: ```bash git branch -d [branch-name] @@ -565,9 +559,9 @@ mindmap Assicurati di andare sulla pagina GitHub del repository forkato e rimuovere il branch remoto che hai appena caricato. -`Pull request` sembra un termine strano perché in realtà vuoi spingere le tue modifiche al progetto. Ma il maintainer (proprietario del progetto) o il team principale deve valutare le tue modifiche prima di unirle al branch "main" del progetto, quindi stai davvero richiedendo una decisione di modifica da parte di un maintainer. +`Pull request` sembra un termine strano perché in realtà vuoi spingere le tue modifiche nel progetto. Ma il maintainer (proprietario del progetto) o il team principale deve valutare le tue modifiche prima di unirle al branch "main" del progetto, quindi stai davvero richiedendo una decisione di modifica da parte di un maintainer. -Una pull request è il luogo in cui confrontare e discutere le differenze introdotte in un branch con revisioni, commenti, test integrati e altro. Una buona pull request segue più o meno le stesse regole di un messaggio di commit. Puoi aggiungere un riferimento a un problema nel tracker dei problemi, ad esempio quando il tuo lavoro risolve un problema. Questo si fa usando un `#` seguito dal numero del problema. Ad esempio `#97`. +Una pull request è il luogo in cui confrontare e discutere le differenze introdotte in un branch con revisioni, commenti, test integrati e altro. Una buona pull request segue più o meno le stesse regole di un messaggio di commit. Puoi aggiungere un riferimento a un problema nel tracker delle issue, ad esempio quando il tuo lavoro risolve un problema. Questo si fa usando un `#` seguito dal numero del problema. Ad esempio `#97`. 🤞Incrociamo le dita che tutti i controlli passino e che il proprietario del progetto unisca le tue modifiche al progetto🤞 @@ -577,34 +571,33 @@ Aggiorna il tuo branch di lavoro locale corrente con tutti i nuovi commit dal br ## Contribuire all'Open Source (La tua occasione per fare la differenza!) -Sei pronto per qualcosa che ti lascerà a bocca aperta? 🤯 Parliamo di contribuire ai progetti open source – e mi vengono i brividi solo pensando di condividere questo con te! +Sei pronto per qualcosa che ti lascerà a bocca aperta? 🤯 Parliamo di contribuire ai progetti open source – e mi vengono i brividi solo a pensare di condividere questo con te! -Questa è la tua occasione per far parte di qualcosa di veramente straordinario. Immagina di migliorare gli strumenti che milioni di sviluppatori usano ogni giorno, o di correggere un bug in un'app che i tuoi amici adorano. Non è solo un sogno – è proprio ciò che significa contribuire all'open source! +Questa è la tua occasione per far parte di qualcosa di veramente straordinario. Immagina di migliorare gli strumenti che milioni di sviluppatori usano ogni giorno o di correggere un bug in un'app che i tuoi amici adorano. Non è solo un sogno – è proprio questo che significa contribuire all'open source! -Ecco cosa mi emoziona ogni volta che ci penso: ogni singolo strumento con cui hai imparato – il tuo editor di codice, i framework che esploreremo, persino il browser che stai usando per leggere questo – è iniziato con qualcuno esattamente come te che ha fatto il suo primo contributo. Quel brillante sviluppatore che ha creato la tua estensione preferita per VS Code? Una volta era un principiante che cliccava su "create pull request" con le mani tremanti, proprio come stai per fare tu. +Ecco cosa mi emoziona ogni volta che ci penso: ogni singolo strumento con cui hai imparato – il tuo editor di codice, i framework che esploreremo, persino il browser che stai usando per leggere questo – è iniziato con qualcuno esattamente come te che ha fatto il suo primo contributo. Quello sviluppatore brillante che ha creato la tua estensione preferita per VS Code? Una volta era un principiante che cliccava su "crea pull request" con le mani tremanti, proprio come stai per fare tu. -E la parte più bella è questa: la comunità open source è come il più grande abbraccio di gruppo su internet. La maggior parte dei progetti cerca attivamente nuovi arrivati e ha problemi etichettati "good first issue" appositamente per persone come te! I maintainer si entusiasmano davvero quando vedono nuovi contributori perché ricordano i loro primi passi. +E la parte più bella è questa: la comunità open source è come il più grande abbraccio collettivo di internet. La maggior parte dei progetti cerca attivamente nuovi arrivati e ha issue etichettate "good first issue" appositamente per persone come te! I maintainer si entusiasmano davvero quando vedono nuovi contributori perché ricordano i loro primi passi. ```mermaid flowchart TD - A[🔍 Explore GitHub] --> B[🏷️ Find "good first issue"] - B --> C[📖 Read Contributing Guidelines] - C --> D[🍴 Fork Repository] - D --> E[💻 Set Up Local Environment] - E --> F[🌿 Create Feature Branch] - F --> G[✨ Make Your Contribution] - G --> H[🧪 Test Your Changes] - H --> I[📝 Write Clear Commit] - I --> J[📤 Push & Create PR] - J --> K[💬 Engage with Feedback] - K --> L[🎉 Merged! You're a Contributor!] - L --> M[🌟 Find Next Issue] + A[🔍 Esplora GitHub] --> B[🏷️ Trova "good first issue"] + B --> C[📖 Leggi Linee Guida per Contribuire] + C --> D[🍴 Fai il Fork del Repository] + D --> E[💻 Configura Ambiente Locale] + E --> F[🌿 Crea Branch per la Funzionalità] + F --> G[✨ Fai il Tuo Contributo] + G --> H[🧪 Testa le Tue Modifiche] + H --> I[📝 Scrivi un Commit Chiaro] + I --> J[📤 Fai Push & Crea PR] + J --> K[💬 Interagisci con il Feedback] + K --> L[🎉 Unito! Sei un Contributore!] + L --> M[🌟 Trova il Prossimo Problema] style A fill:#e1f5fe style L fill:#c8e6c9 style M fill:#fff59d ``` - Non stai solo imparando a programmare qui – ti stai preparando a unirti a una famiglia globale di costruttori che si svegliano ogni giorno pensando "Come possiamo rendere il mondo digitale un po' migliore?" Benvenuto nel club! 🌟 Per prima cosa, troviamo un repository (o **repo**) su GitHub che ti interessa e a cui vorresti contribuire con una modifica. Vorrai copiarne i contenuti sul tuo computer. @@ -613,26 +606,26 @@ Per prima cosa, troviamo un repository (o **repo**) su GitHub che ti interessa e ![Copia un repo localmente](../../../../translated_images/clone_repo.5085c48d666ead57664f050d806e325d7f883be6838c821e08bc823ab7c66665.it.png) -Ci sono diversi modi per copiare il codice. Un modo è "clonare" i contenuti del repository, usando HTTPS, SSH o il GitHub CLI (Command Line Interface). +Ci sono diversi modi per copiare il codice. Uno di questi è "clonare" i contenuti del repository, utilizzando HTTPS, SSH o il GitHub CLI (Command Line Interface). -Apri il tuo terminale e clona il repository in questo modo: +Apri il terminale e clona il repository in questo modo: ```bash -# Using HTTPS +# Utilizzando HTTPS git clone https://github.com/ProjectURL -# Using SSH (requires SSH key setup) +# Utilizzando SSH (richiede la configurazione della chiave SSH) git clone git@github.com:username/repository.git -# Using GitHub CLI +# Utilizzando GitHub CLI gh repo clone username/repository ``` -Per lavorare sul progetto, passa alla cartella corretta: +Per lavorare sul progetto, spostati nella cartella corretta: `cd ProjectURL` -Puoi anche aprire l'intero progetto usando: +Puoi anche aprire l'intero progetto utilizzando: - **[GitHub Codespaces](https://github.com/features/codespaces)** - L'ambiente di sviluppo cloud di GitHub con VS Code nel browser -- **[GitHub Desktop](https://desktop.github.com/)** - Un'applicazione GUI per operazioni Git +- **[GitHub Desktop](https://desktop.github.com/)** - Un'applicazione GUI per le operazioni Git - **[GitHub.dev](https://github.dev)** - Premi il tasto `.` su qualsiasi repo GitHub per aprire VS Code nel browser - **VS Code** con l'estensione GitHub Pull Requests @@ -640,49 +633,49 @@ Infine, puoi scaricare il codice in una cartella compressa. ### Alcune cose interessanti su GitHub -Puoi mettere una stella, seguire e/o "forkare" qualsiasi repository pubblico su GitHub. Puoi trovare i tuoi repository con stella nel menu a tendina in alto a destra. È come salvare nei preferiti, ma per il codice. +Puoi mettere una stella, seguire e/o "forkare" qualsiasi repository pubblico su GitHub. Puoi trovare i tuoi repository con stella nel menu a tendina in alto a destra. È come aggiungere ai segnalibri, ma per il codice. -I progetti hanno un tracker dei problemi, per lo più su GitHub nella scheda "Issues" a meno che non sia indicato diversamente, dove le persone discutono dei problemi relativi al progetto. E la scheda Pull Requests è dove le persone discutono e revisionano le modifiche in corso. +I progetti hanno un tracker delle issue, per lo più su GitHub nella scheda "Issues" a meno che non sia indicato diversamente, dove le persone discutono dei problemi relativi al progetto. E la scheda Pull Requests è dove le persone discutono e revisionano le modifiche in corso. I progetti potrebbero anche avere discussioni in forum, mailing list o canali di chat come Slack, Discord o IRC. 🔧 **Funzionalità moderne di GitHub**: - **GitHub Discussions** - Forum integrato per conversazioni della comunità - **GitHub Sponsors** - Supporta finanziariamente i maintainer -- **Scheda Sicurezza** - Rapporti sulle vulnerabilità e avvisi di sicurezza -- **Scheda Azioni** - Vedi flussi di lavoro automatizzati e pipeline CI/CD -- **Scheda Insights** - Analisi sui contributori, commit e salute del progetto -- **Scheda Progetti** - Strumenti di gestione dei progetti integrati di GitHub +- **Scheda Security** - Rapporti sulle vulnerabilità e avvisi di sicurezza +- **Scheda Actions** - Visualizza i flussi di lavoro automatizzati e le pipeline CI/CD +- **Scheda Insights** - Analisi su contributori, commit e salute del progetto +- **Scheda Projects** - Strumenti di gestione dei progetti integrati di GitHub -✅ Dai un'occhiata al tuo nuovo repository GitHub e prova alcune cose, come modificare le impostazioni, aggiungere informazioni al tuo repo, creare un progetto (come una bacheca Kanban) e configurare GitHub Actions per l'automazione. C'è molto che puoi fare! +✅ Esplora il tuo nuovo repository GitHub e prova alcune cose, come modificare le impostazioni, aggiungere informazioni al tuo repo, creare un progetto (come una bacheca Kanban) e configurare GitHub Actions per l'automazione. C'è molto da fare! --- ## 🚀 Sfida -Bene, è ora di mettere alla prova i tuoi nuovi superpoteri GitHub! 🚀 Ecco una sfida che farà cliccare tutto nel modo più soddisfacente: +Bene, è ora di mettere alla prova i tuoi nuovi superpoteri GitHub! 🚀 Ecco una sfida che renderà tutto più chiaro nel modo più soddisfacente: -Trova un amico (o quel familiare che ti chiede sempre cosa stai facendo con tutta questa "roba da computer") e intraprendi insieme un'avventura di programmazione collaborativa! Qui è dove accade la vera magia – crea un progetto, lascia che lo forkino, crea alcuni branch e unisci le modifiche come i professionisti che stai diventando. +Coinvolgi un amico (o quel familiare che ti chiede sempre cosa stai facendo con tutto questo "roba da computer") e intraprendi insieme un'avventura di codifica collaborativa! Qui è dove accade la vera magia – crea un progetto, faglielo forkare, crea dei branch e unisci le modifiche come i professionisti che stai diventando. -Non ti mentirò – probabilmente riderai a un certo punto (soprattutto quando entrambi cercherete di modificare la stessa riga), magari vi gratterete la testa per la confusione, ma sicuramente avrete quei momenti "aha!" incredibili che rendono tutto l'apprendimento degno di essere vissuto. Inoltre, c'è qualcosa di speciale nel condividere quel primo merge riuscito con qualcun altro – è come una piccola celebrazione di quanto sei arrivato lontano! +Non ti mentirò – probabilmente riderai a un certo punto (soprattutto quando entrambi proverete a modificare la stessa riga), forse vi gratterete la testa per la confusione, ma avrete sicuramente quei momenti "aha!" incredibili che rendono tutto l'apprendimento degno di essere vissuto. Inoltre, c'è qualcosa di speciale nel condividere quella prima unione riuscita con qualcun altro – è come una piccola celebrazione di quanto sei arrivato lontano! -Non hai ancora un amico programmatore? Nessun problema! La comunità GitHub è piena di persone incredibilmente accoglienti che ricordano com'era essere nuovi. Cerca repository con etichette "good first issue" – stanno praticamente dicendo "Ehi principianti, venite a imparare con noi!" Non è fantastico? +Non hai ancora un compagno di codifica? Nessun problema! La comunità GitHub è piena di persone incredibilmente accoglienti che ricordano com'era essere nuovi. Cerca repository con etichette "good first issue" – stanno praticamente dicendo "Ehi principianti, venite a imparare con noi!" Non è fantastico? ## Quiz post-lezione [Quiz post-lezione](https://ff-quizzes.netlify.app/web/en/) -## Rivedi e continua a imparare +## Revisione e continua a imparare -Uff! 🎉 Guarda te – hai appena conquistato le basi di GitHub come un vero campione! Se la tua mente si sente un po' piena in questo momento, è completamente normale e, onestamente, un buon segno. Hai appena imparato strumenti che mi hanno richiesto settimane per sentirmi a mio agio quando ho iniziato. +Wow! 🎉 Guarda te – hai appena conquistato le basi di GitHub come un vero campione! Se la tua mente si sente un po' piena in questo momento, è del tutto normale e onestamente un buon segno. Hai appena imparato strumenti che mi hanno richiesto settimane per sentirmi a mio agio quando ho iniziato. -Git e GitHub sono incredibilmente potenti (davvero potenti), e ogni sviluppatore che conosco – inclusi quelli che ora sembrano maghi – ha dovuto esercitarsi e inciampare un po' prima che tutto facesse clic. Il fatto che tu abbia completato questa lezione significa che sei già sulla strada per padroneggiare alcuni degli strumenti più importanti nel kit di uno sviluppatore. +Git e GitHub sono incredibilmente potenti (davvero potenti), e ogni sviluppatore che conosco – inclusi quelli che ora sembrano maghi – ha dovuto esercitarsi e inciampare un po' prima che tutto facesse clic. Il fatto che tu abbia completato questa lezione significa che sei già sulla buona strada per padroneggiare alcuni degli strumenti più importanti nel kit di uno sviluppatore. -Ecco alcune risorse assolutamente fantastiche per aiutarti a esercitarti e diventare ancora più bravo: +Ecco alcune risorse assolutamente fantastiche per aiutarti a esercitarti e diventare ancora più straordinario: - [Guida al contributo al software open source](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) – La tua mappa per fare la differenza - [Cheatsheet di Git](https://training.github.com/downloads/github-git-cheat-sheet/) – Tienilo a portata di mano per un rapido riferimento! -E ricorda: la pratica porta al progresso, non alla perfezione! Più usi Git e GitHub, più diventa naturale. GitHub ha creato alcuni corsi interattivi straordinari che ti permettono di esercitarti in un ambiente sicuro: +E ricorda: la pratica porta al progresso, non alla perfezione! Più usi Git e GitHub, più diventerà naturale. GitHub ha creato alcuni corsi interattivi straordinari che ti permettono di esercitarti in un ambiente sicuro: - [Introduzione a GitHub](https://github.com/skills/introduction-to-github) - [Comunicare usando Markdown](https://github.com/skills/communicate-using-markdown) @@ -693,19 +686,19 @@ E ricorda: la pratica porta al progresso, non alla perfezione! Più usi Git e Gi - [Documentazione GitHub CLI](https://cli.github.com/manual/) – Per quando vuoi sentirti un mago della riga di comando - [Documentazione GitHub Codespaces](https://docs.github.com/en/codespaces) – Codifica nel cloud! - [Documentazione GitHub Actions](https://docs.github.com/en/actions) – Automatizza tutto -- [Best practices di Git](https://www.atlassian.com/git/tutorials/comparing-workflows) – Migliora il tuo flusso di lavoro +- [Best practice di Git](https://www.atlassian.com/git/tutorials/comparing-workflows) – Migliora il tuo flusso di lavoro ## Sfida GitHub Copilot Agent 🚀 Usa la modalità Agent per completare la seguente sfida: -**Descrizione:** Crea un progetto collaborativo di sviluppo web che dimostri il completo flusso di lavoro GitHub che hai imparato in questa lezione. Questa sfida ti aiuterà a esercitarti nella creazione di repository, nelle funzionalità di collaborazione e nei moderni flussi di lavoro Git in uno scenario reale. +**Descrizione:** Crea un progetto di sviluppo web collaborativo che dimostri il flusso di lavoro GitHub completo che hai imparato in questa lezione. Questa sfida ti aiuterà a esercitarti nella creazione di repository, nelle funzionalità di collaborazione e nei flussi di lavoro Git moderni in uno scenario reale. -**Prompt:** Crea un nuovo repository pubblico GitHub per un semplice progetto "Risorse per lo sviluppo web". Il repository dovrebbe includere un file README.md ben strutturato che elenca strumenti e risorse utili per lo sviluppo web, organizzati per categorie (HTML, CSS, JavaScript, ecc.). Configura il repository con standard di comunità adeguati, inclusi una licenza, linee guida per i contributi e un codice di condotta. Crea almeno due branch di funzionalità: uno per aggiungere risorse CSS e un altro per risorse JavaScript. Fai commit su ciascun branch con messaggi di commit descrittivi, quindi crea pull request per unire le modifiche al branch principale. Abilita funzionalità GitHub come Issues, Discussions e configura un flusso di lavoro GitHub Actions di base per controlli automatizzati. +**Prompt:** Crea un nuovo repository pubblico GitHub per un semplice progetto "Risorse per lo sviluppo web". Il repository dovrebbe includere un file README.md ben strutturato che elenchi strumenti e risorse utili per lo sviluppo web, organizzati per categorie (HTML, CSS, JavaScript, ecc.). Configura il repository con standard di comunità adeguati, inclusi una licenza, linee guida per i contributi e un codice di condotta. Crea almeno due branch di funzionalità: uno per aggiungere risorse CSS e un altro per risorse JavaScript. Fai commit su ciascun branch con messaggi di commit descrittivi, quindi crea pull request per unire le modifiche al branch principale. Abilita funzionalità GitHub come Issues, Discussions e configura un flusso di lavoro base di GitHub Actions per controlli automatizzati. ## Compito -La tua missione, se decidi di accettarla: Completa il corso [Introduzione a GitHub](https://github.com/skills/introduction-to-github) su GitHub Skills. Questo corso interattivo ti permetterà di esercitarti in tutto ciò che hai imparato in un ambiente sicuro e guidato. Inoltre, riceverai un fantastico badge quando lo completerai! 🏅 +La tua missione, se decidi di accettarla: Completa il corso [Introduzione a GitHub](https://github.com/skills/introduction-to-github) su GitHub Skills. Questo corso interattivo ti permetterà di esercitarti in tutto ciò che hai imparato in un ambiente sicuro e guidato. Inoltre, otterrai un fantastico badge quando lo completi! 🏅 **Ti senti pronto per altre sfide?** - Configura l'autenticazione SSH per il tuo account GitHub (niente più password!) @@ -715,7 +708,7 @@ La tua missione, se decidi di accettarla: Completa il corso [Introduzione a GitH --- -## 🚀 La tua timeline di padronanza di GitHub +## 🚀 La tua timeline per padroneggiare GitHub ### ⚡ **Cosa puoi fare nei prossimi 5 minuti** - [ ] Metti una stella a questo repository e ad altri 3 progetti che ti interessano @@ -725,20 +718,20 @@ La tua missione, se decidi di accettarla: Completa il corso [Introduzione a GitH ### 🎯 **Cosa puoi realizzare in quest'ora** - [ ] Completa il quiz post-lezione e rifletti sul tuo percorso GitHub -- [ ] Configura chiavi SSH per l'autenticazione GitHub senza password +- [ ] Configura le chiavi SSH per un'autenticazione GitHub senza password - [ ] Crea il tuo primo commit significativo con un ottimo messaggio di commit - [ ] Esplora la scheda "Esplora" di GitHub per scoprire progetti di tendenza - [ ] Esercitati a forkare un repository e a fare una piccola modifica -### 📅 **La tua avventura settimanale su GitHub** +### 📅 **La tua avventura GitHub di una settimana** - [ ] Completa i corsi GitHub Skills (Introduzione a GitHub, Markdown) - [ ] Fai la tua prima pull request a un progetto open source - [ ] Configura un sito GitHub Pages per mostrare il tuo lavoro -- [ ] Partecipa alle discussioni su GitHub nei progetti che ti interessano +- [ ] Partecipa alle discussioni GitHub sui progetti che ti interessano - [ ] Crea un repository con standard di comunità adeguati (README, Licenza, ecc.) - [ ] Prova GitHub Codespaces per lo sviluppo basato sul cloud -### 🌟 **La tua trasformazione mensile** +### 🌟 **La tua trasformazione in un mese** - [ ] Contribuisci a 3 diversi progetti open source - [ ] Fai da mentore a qualcuno nuovo su GitHub (restituisci il favore!) - [ ] Configura flussi di lavoro automatizzati con GitHub Actions @@ -756,26 +749,27 @@ La tua missione, se decidi di accettarla: Completa il corso [Introduzione a GitH ```mermaid journey - title Your GitHub Confidence Journey - section Today - Nervous: 3: You - Curious: 4: You - Excited: 5: You - section This Week - Practicing: 4: You - Contributing: 5: You - Connecting: 5: You - section Next Month - Collaborating: 5: You - Leading: 5: You - Inspiring Others: 5: You + title Il tuo viaggio di fiducia su GitHub + section Oggi + Nervoso: 3: Tu + Curioso: 4: Tu + Eccitato: 5: Tu + section Questa Settimana + Praticando: 4: Tu + Contribuendo: 5: Tu + Connettendo: 5: Tu + section Il Prossimo Mese + Collaborando: 5: Tu + Guidando: 5: Tu + Ispirando Altri: 5: Tu ``` - -> 🌍 **Benvenuto nella comunità globale degli sviluppatori!** Ora hai gli strumenti per collaborare con milioni di sviluppatori in tutto il mondo. Il tuo primo contributo potrebbe sembrare piccolo, ma ricorda - ogni grande progetto open source è iniziato con qualcuno che ha fatto il suo primo commit. La domanda non è se farai la differenza, ma quale progetto straordinario beneficerà per primo della tua prospettiva unica! 🚀 +> 🌍 **Benvenuto nella comunità globale degli sviluppatori!** Ora hai gli strumenti per collaborare con milioni di sviluppatori in tutto il mondo. Il tuo primo contributo potrebbe sembrare piccolo, ma ricorda - ogni grande progetto open source è iniziato con qualcuno che ha fatto il suo primo commit. La domanda non è se farai un impatto, ma quale progetto straordinario beneficerà per primo della tua prospettiva unica! 🚀 Ricorda: ogni esperto è stato un principiante. Ce la puoi fare! 💪 --- -**Disclaimer**: -Questo documento è stato tradotto utilizzando il servizio di traduzione AI [Co-op Translator](https://github.com/Azure/co-op-translator). Sebbene ci impegniamo per garantire l'accuratezza, si prega di notare che le traduzioni automatiche possono contenere errori o imprecisioni. Il documento originale nella sua lingua nativa dovrebbe essere considerato la fonte autorevole. Per informazioni critiche, si consiglia una traduzione professionale umana. Non siamo responsabili per eventuali incomprensioni o interpretazioni errate derivanti dall'uso di questa traduzione. \ No newline at end of file + +**Disclaimer (Avvertenza)**: +Questo documento è stato tradotto utilizzando il servizio di traduzione automatica [Co-op Translator](https://github.com/Azure/co-op-translator). Sebbene ci impegniamo per garantire l'accuratezza, si prega di notare che le traduzioni automatiche possono contenere errori o imprecisioni. Il documento originale nella sua lingua nativa dovrebbe essere considerato la fonte autorevole. Per informazioni critiche, si raccomanda una traduzione professionale umana. Non siamo responsabili per eventuali incomprensioni o interpretazioni errate derivanti dall'uso di questa traduzione. + \ No newline at end of file diff --git a/translations/it/README.md b/translations/it/README.md index bac72bd1..87394c38 100644 --- a/translations/it/README.md +++ b/translations/it/README.md @@ -1,8 +1,8 @@ -[Arabo](../ar/README.md) | [Bengalese](../bn/README.md) | [Bulgaro](../bg/README.md) | [Birmano (Myanmar)](../my/README.md) | [Cinese (Semplificato)](../zh/README.md) | [Cinese (Tradizionale, Hong Kong)](../hk/README.md) | [Cinese (Tradizionale, Macao)](../mo/README.md) | [Cinese (Tradizionale, Taiwan)](../tw/README.md) | [Croato](../hr/README.md) | [Ceco](../cs/README.md) | [Danese](../da/README.md) | [Olandese](../nl/README.md) | [Estone](../et/README.md) | [Finlandese](../fi/README.md) | [Francese](../fr/README.md) | [Tedesco](../de/README.md) | [Greco](../el/README.md) | [Ebraico](../he/README.md) | [Hindi](../hi/README.md) | [Ungherese](../hu/README.md) | [Indonesiano](../id/README.md) | [Italiano](./README.md) | [Giapponese](../ja/README.md) | [Coreano](../ko/README.md) | [Lituano](../lt/README.md) | [Malese](../ms/README.md) | [Marathi](../mr/README.md) | [Nepalese](../ne/README.md) | [Norvegese](../no/README.md) | [Persiano (Farsi)](../fa/README.md) | [Polacco](../pl/README.md) | [Portoghese (Brasile)](../br/README.md) | [Portoghese (Portogallo)](../pt/README.md) | [Punjabi (Gurmukhi)](../pa/README.md) | [Rumeno](../ro/README.md) | [Russo](../ru/README.md) | [Serbo (Cirillico)](../sr/README.md) | [Slovacco](../sk/README.md) | [Sloveno](../sl/README.md) | [Spagnolo](../es/README.md) | [Swahili](../sw/README.md) | [Svedese](../sv/README.md) | [Tagalog (Filippino)](../tl/README.md) | [Tamil](../ta/README.md) | [Thailandese](../th/README.md) | [Turco](../tr/README.md) | [Ucraino](../uk/README.md) | [Urdu](../ur/README.md) | [Vietnamita](../vi/README.md) +[Arabo](../ar/README.md) | [Bengalese](../bn/README.md) | [Bulgaro](../bg/README.md) | [Birmano (Myanmar)](../my/README.md) | [Cinese (Semplificato)](../zh/README.md) | [Cinese (Tradizionale, Hong Kong)](../hk/README.md) | [Cinese (Tradizionale, Macao)](../mo/README.md) | [Cinese (Tradizionale, Taiwan)](../tw/README.md) | [Croato](../hr/README.md) | [Ceco](../cs/README.md) | [Danese](../da/README.md) | [Olandese](../nl/README.md) | [Estone](../et/README.md) | [Finlandese](../fi/README.md) | [Francese](../fr/README.md) | [Tedesco](../de/README.md) | [Greco](../el/README.md) | [Ebraico](../he/README.md) | [Hindi](../hi/README.md) | [Ungherese](../hu/README.md) | [Indonesiano](../id/README.md) | [Italiano](./README.md) | [Giapponese](../ja/README.md) | [Coreano](../ko/README.md) | [Lituano](../lt/README.md) | [Malese](../ms/README.md) | [Marathi](../mr/README.md) | [Nepalese](../ne/README.md) | [Norvegese](../no/README.md) | [Persiano (Farsi)](../fa/README.md) | [Polacco](../pl/README.md) | [Portoghese (Brasile)](../br/README.md) | [Portoghese (Portogallo)](../pt/README.md) | [Punjabi (Gurmukhi)](../pa/README.md) | [Rumeno](../ro/README.md) | [Russo](../ru/README.md) | [Serbo (Cirillico)](../sr/README.md) | [Slovacco](../sk/README.md) | [Sloveno](../sl/README.md) | [Spagnolo](../es/README.md) | [Swahili](../sw/README.md) | [Svedese](../sv/README.md) | [Tagalog (Filippino)](../tl/README.md) | [Tamil](../ta/README.md) | [Tailandese](../th/README.md) | [Turco](../tr/README.md) | [Ucraino](../uk/README.md) | [Urdu](../ur/README.md) | [Vietnamita](../vi/README.md) -**Se desideri supportare ulteriori traduzioni, le lingue supportate sono elencate [qui](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)** +**Se desideri supportare ulteriori traduzioni, le lingue disponibili sono elencate [qui](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)** [![Apri in Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners) #### 🧑‍🎓 _Sei uno studente?_ -Visita [**Student Hub page**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) dove troverai risorse per principianti, pacchetti per studenti e persino modi per ottenere un voucher per un certificato gratuito. Questa è la pagina che vuoi salvare nei preferiti e controllare di tanto in tanto, poiché il contenuto viene aggiornato mensilmente. +Visita la [**pagina Student Hub**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) dove troverai risorse per principianti, pacchetti per studenti e persino modi per ottenere un voucher per un certificato gratuito. Questa è la pagina da salvare nei preferiti e controllare di tanto in tanto, poiché i contenuti vengono aggiornati mensilmente. -### 📣 Annuncio - Nuove sfide con la modalità Agent di GitHub Copilot da completare! +### 📣 Annuncio - Nuove sfide con la modalità Agent di GitHub Copilot! -Nuova sfida aggiunta, cerca "GitHub Copilot Agent Challenge 🚀" nella maggior parte dei capitoli. È una nuova sfida da completare utilizzando GitHub Copilot e la modalità Agent. Se non hai mai usato la modalità Agent prima, è in grado non solo di generare testo, ma anche di creare e modificare file, eseguire comandi e altro. +Nuova sfida aggiunta, cerca "GitHub Copilot Agent Challenge 🚀" nella maggior parte dei capitoli. È una nuova sfida da completare utilizzando GitHub Copilot e la modalità Agent. Se non hai mai usato la modalità Agent, è in grado non solo di generare testo ma anche di creare e modificare file, eseguire comandi e altro. -### 📣 Annuncio - _Nuovo Progetto da realizzare utilizzando l'Intelligenza Artificiale Generativa_ +### 📣 Annuncio - _Nuovo Progetto da costruire utilizzando l'AI Generativa_ -Nuovo progetto AI Assistant appena aggiunto, dai un'occhiata [al progetto](./09-chat-project/README.md) +Appena aggiunto un nuovo progetto AI Assistant, dai un'occhiata [al progetto](./09-chat-project/README.md) -### 📣 Annuncio - _Nuovo Curriculum_ sull'Intelligenza Artificiale Generativa per JavaScript appena rilasciato +### 📣 Annuncio - _Nuovo Curriculum_ sull'AI Generativa per JavaScript appena rilasciato -Non perdere il nostro nuovo curriculum sull'Intelligenza Artificiale Generativa! +Non perdere il nostro nuovo curriculum sull'AI Generativa! Visita [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) per iniziare! ![Sfondo](../../translated_images/background.148a8d43afde57303419a663f50daf586681bc2fabf833f66ef6954073983c66.it.png) -- Lezioni che coprono tutto, dai concetti di base a RAG. +- Lezioni che coprono tutto, dalle basi a RAG. - Interagisci con personaggi storici utilizzando GenAI e la nostra app complementare. - Narrazione divertente e coinvolgente, viaggerai nel tempo! @@ -79,13 +79,13 @@ Visita [https://aka.ms/genai-js-course](../../[https:/aka.ms/genai-js-course) pe -## 🌱 Per iniziare +## 🌱 Iniziare -> **Insegnanti**, abbiamo [incluso alcune indicazioni](for-teachers.md) su come utilizzare questo curriculum. Ci piacerebbe ricevere il vostro feedback [nel nostro forum di discussione](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! +> **Insegnanti**, abbiamo [incluso alcuni suggerimenti](for-teachers.md) su come utilizzare questo curriculum. Ci piacerebbe ricevere il vostro feedback [nel nostro forum di discussione](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! -**[Studenti](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, per ogni lezione, inizia con un quiz introduttivo e prosegui leggendo il materiale della lezione, completando le varie attività e verifica la tua comprensione con il quiz finale. +**[Studenti](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, per ogni lezione, inizia con un quiz pre-lezione e prosegui leggendo il materiale della lezione, completando le varie attività e verifica la tua comprensione con il quiz post-lezione. -Per migliorare la tua esperienza di apprendimento, connettiti con i tuoi compagni per lavorare insieme sui progetti! Le discussioni sono incoraggiate nel nostro [forum di discussione](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) dove il nostro team di moderatori sarà disponibile per rispondere alle tue domande. +Per migliorare la tua esperienza di apprendimento, connettiti con i tuoi compagni per lavorare insieme ai progetti! Le discussioni sono incoraggiate nel nostro [forum di discussione](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) dove il nostro team di moderatori sarà disponibile per rispondere alle tue domande. Per approfondire la tua formazione, ti consigliamo vivamente di esplorare [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) per materiali di studio aggiuntivi. @@ -97,7 +97,7 @@ Questo curriculum ha un ambiente di sviluppo pronto all'uso! Quando inizi, puoi Per salvare facilmente il tuo lavoro, ti consigliamo di creare una copia di questo repository. Puoi farlo cliccando sul pulsante **Use this template** in cima alla pagina. Questo creerà un nuovo repository nel tuo account GitHub con una copia del curriculum. Segui questi passaggi: -1. **Fai un Fork del Repository**: Clicca sul pulsante "Fork" in alto a destra in questa pagina. +1. **Fai un Fork del Repository**: Clicca sul pulsante "Fork" nell'angolo in alto a destra di questa pagina. 2. **Clona il Repository**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` #### Eseguire il curriculum in un Codespace @@ -108,16 +108,15 @@ Nella tua copia di questo repository che hai creato, clicca sul pulsante **Code* #### Eseguire il curriculum localmente sul tuo computer -Per eseguire questo curriculum localmente sul tuo computer, avrai bisogno di un editor di testo, un browser e uno strumento da riga di comando. La nostra prima lezione, [Introduzione ai Linguaggi di Programmazione e agli Strumenti del Mestiere](../../1-getting-started-lessons/1-intro-to-programming-languages), ti guiderà attraverso varie opzioni per ciascuno di questi strumenti per aiutarti a scegliere quello che funziona meglio per te. +Per eseguire questo curriculum localmente sul tuo computer, avrai bisogno di un editor di testo, un browser e uno strumento da riga di comando. La nostra prima lezione, [Introduzione ai Linguaggi di Programmazione e agli Strumenti del Mestiere](../../1-getting-started-lessons/1-intro-to-programming-languages), ti guiderà attraverso varie opzioni per ciascuno di questi strumenti, così potrai scegliere quello che funziona meglio per te. La nostra raccomandazione è di utilizzare [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) come editor, che ha anche un [Terminale](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) integrato. Puoi scaricare Visual Studio Code [qui](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). - 1. Clona il tuo repository sul tuo computer. Puoi farlo cliccando sul pulsante **Code** e copiando l'URL: [CodeSpace](./images/createcodespace.png) - Poi, apri [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) all'interno di [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) ed esegui il seguente comando, sostituendo `` con l'URL che hai appena copiato: + Poi, apri il [Terminale](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) all'interno di [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) ed esegui il seguente comando, sostituendo `` con l'URL che hai appena copiato: ```bash git clone @@ -125,8 +124,7 @@ La nostra raccomandazione è di utilizzare [Visual Studio Code](https://code.vis 2. Apri la cartella in Visual Studio Code. Puoi farlo cliccando su **File** > **Open Folder** e selezionando la cartella che hai appena clonato. - -> Estensioni consigliate per Visual Studio Code: +> Estensioni consigliate per Visual Studio Code: > > * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - per visualizzare in anteprima le pagine HTML all'interno di Visual Studio Code > * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - per aiutarti a scrivere codice più velocemente @@ -155,50 +153,50 @@ La nostra raccomandazione è di utilizzare [Visual Studio Code](https://code.vis | 03 | Introduzione | Accessibilità | Impara le basi dell'accessibilità web | [Fondamenti di Accessibilità](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | | 04 | Fondamenti JS | Tipi di Dati in JavaScript | Le basi dei tipi di dati in JavaScript | [Tipi di Dati](./2-js-basics/1-data-types/README.md) | Jasmine | | 05 | Fondamenti JS | Funzioni e Metodi | Impara le funzioni e i metodi per gestire il flusso logico di un'applicazione | [Funzioni e Metodi](./2-js-basics/2-functions-methods/README.md) | Jasmine e Christopher | -| 06 | Fondamenti JS | Prendere Decisioni con JS | Impara a creare condizioni nel tuo codice usando metodi decisionali | [Prendere Decisioni](./2-js-basics/3-making-decisions/README.md) | Jasmine | -| 07 | Fondamenti JS | Array e Cicli | Lavora con i dati usando array e cicli in JavaScript | [Array e Cicli](./2-js-basics/4-arrays-loops/README.md) | Jasmine | +| 06 | Fondamenti JS | Prendere Decisioni con JS | Impara a creare condizioni nel tuo codice utilizzando metodi decisionali | [Prendere Decisioni](./2-js-basics/3-making-decisions/README.md) | Jasmine | +| 07 | Fondamenti JS | Array e Cicli | Lavora con i dati utilizzando array e cicli in JavaScript | [Array e Cicli](./2-js-basics/4-arrays-loops/README.md) | Jasmine | | 08 | [Terrarium](./3-terrarium/solution/README.md) | HTML in Pratica | Costruisci l'HTML per creare un terrario online, concentrandoti sulla creazione di un layout | [Introduzione a HTML](./3-terrarium/1-intro-to-html/README.md) | Jen | -| 09 | [Terrarium](./3-terrarium/solution/README.md) | CSS in Pratica | Costruisci il CSS per stilizzare il terrario online, concentrandoti sui fondamenti del CSS inclusa la creazione di una pagina responsiva | [Introduzione a CSS](./3-terrarium/2-intro-to-css/README.md) | Jen | -| 10 | [Terrarium](./3-terrarium/solution/README.md) | Chiusure JavaScript, manipolazione DOM | Costruisci il JavaScript per far funzionare il terrario come un'interfaccia drag/drop, concentrandoti sulle chiusure e sulla manipolazione DOM | [Chiusure JavaScript, manipolazione DOM](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | +| 09 | [Terrarium](./3-terrarium/solution/README.md) | CSS in Pratica | Costruisci il CSS per stilizzare il terrario online, concentrandoti sui fondamenti del CSS incluso rendere la pagina responsiva | [Introduzione a CSS](./3-terrarium/2-intro-to-css/README.md) | Jen | +| 10 | [Terrarium](./3-terrarium/solution/README.md) | Chiusure JavaScript, manipolazione DOM | Costruisci il JavaScript per far funzionare il terrario come un'interfaccia drag/drop, concentrandoti sulle chiusure e sulla manipolazione del DOM | [Chiusure JavaScript, manipolazione DOM](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | | 11 | [Gioco di Scrittura](./4-typing-game/solution/README.md) | Costruire un Gioco di Scrittura | Impara a utilizzare gli eventi della tastiera per guidare la logica della tua app JavaScript | [Programmazione Basata su Eventi](./4-typing-game/typing-game/README.md) | Christopher | | 12 | [Estensione Browser Green](./5-browser-extension/solution/README.md) | Lavorare con i Browser | Impara come funzionano i browser, la loro storia e come creare i primi elementi di un'estensione per browser | [Informazioni sui Browser](./5-browser-extension/1-about-browsers/README.md) | Jen | -| 13 | [Estensione Browser Green](./5-browser-extension/solution/README.md) | Costruire un modulo, chiamare un'API e memorizzare variabili nella memoria locale | Costruisci gli elementi JavaScript della tua estensione per browser per chiamare un'API utilizzando variabili memorizzate nella memoria locale | [API, Moduli e Memoria Locale](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | -| 14 | [Estensione Browser Green](./5-browser-extension/solution/README.md) | Processi in background nel browser, prestazioni web | Usa i processi in background del browser per gestire l'icona dell'estensione; impara le prestazioni web e alcune ottimizzazioni per migliorare | [Attività in Background e Prestazioni](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | -| 15 | [Gioco Spaziale](./6-space-game/solution/README.md) | Sviluppo di Giochi più Avanzati con JavaScript | Impara l'Ereditarietà usando sia Classi che Composizione e il pattern Pub/Sub, in preparazione per costruire un gioco | [Introduzione allo Sviluppo Avanzato di Giochi](./6-space-game/1-introduction/README.md) | Chris | -| 16 | [Gioco Spaziale](./6-space-game/solution/README.md) | Disegnare su canvas | Impara l'API Canvas, usata per disegnare elementi su uno schermo | [Disegnare su Canvas](./6-space-game/2-drawing-to-canvas/README.md) | Chris | -| 17 | [Gioco Spaziale](./6-space-game/solution/README.md) | Muovere elementi sullo schermo | Scopri come gli elementi possono acquisire movimento usando le coordinate cartesiane e l'API Canvas | [Muovere Elementi](./6-space-game/3-moving-elements-around/README.md) | Chris | -| 18 | [Gioco Spaziale](./6-space-game/solution/README.md) | Rilevamento delle collisioni | Fai collidere gli elementi e falli reagire tra loro usando i tasti e fornisci una funzione di cooldown per garantire le prestazioni del gioco | [Rilevamento delle Collisioni](./6-space-game/4-collision-detection/README.md) | Chris | +| 13 | [Estensione Browser Green](./5-browser-extension/solution/README.md) | Costruire un modulo, chiamare un'API e memorizzare variabili in local storage | Costruisci gli elementi JavaScript della tua estensione per browser per chiamare un'API utilizzando variabili memorizzate in local storage | [API, Moduli e Local Storage](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | +| 14 | [Estensione Browser Green](./5-browser-extension/solution/README.md) | Processi in background nel browser, prestazioni web | Utilizza i processi in background del browser per gestire l'icona dell'estensione; impara le prestazioni web e alcune ottimizzazioni per migliorare | [Attività in Background e Prestazioni](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | +| 15 | [Gioco Spaziale](./6-space-game/solution/README.md) | Sviluppo di Giochi più Avanzato con JavaScript | Impara l'Ereditarietà utilizzando sia Classi che Composizione e il pattern Pub/Sub, in preparazione per costruire un gioco | [Introduzione allo Sviluppo Avanzato di Giochi](./6-space-game/1-introduction/README.md) | Chris | +| 16 | [Gioco Spaziale](./6-space-game/solution/README.md) | Disegnare su canvas | Impara l'API Canvas, utilizzata per disegnare elementi su uno schermo | [Disegnare su Canvas](./6-space-game/2-drawing-to-canvas/README.md) | Chris | +| 17 | [Gioco Spaziale](./6-space-game/solution/README.md) | Muovere elementi sullo schermo | Scopri come gli elementi possono acquisire movimento utilizzando le coordinate cartesiane e l'API Canvas | [Muovere Elementi](./6-space-game/3-moving-elements-around/README.md) | Chris | +| 18 | [Gioco Spaziale](./6-space-game/solution/README.md) | Rilevamento delle collisioni | Fai collidere gli elementi e reagire tra loro utilizzando i tasti e fornisci una funzione di cooldown per garantire le prestazioni del gioco | [Rilevamento delle Collisioni](./6-space-game/4-collision-detection/README.md) | Chris | | 19 | [Gioco Spaziale](./6-space-game/solution/README.md) | Tenere il punteggio | Esegui calcoli matematici basati sullo stato e sulle prestazioni del gioco | [Tenere il Punteggio](./6-space-game/5-keeping-score/README.md) | Chris | -| 20 | [Gioco Spaziale](./6-space-game/solution/README.md) | Terminare e riavviare il gioco | Impara a terminare e riavviare il gioco, inclusa la pulizia delle risorse e il reset dei valori delle variabili | [Condizione di Fine](./6-space-game/6-end-condition/README.md) | Chris | -| 21 | [App Bancaria](./7-bank-project/solution/README.md) | Template HTML e Rotte in un'App Web | Impara a creare la struttura di un sito web multipagina utilizzando routing e template HTML | [Template HTML e Rotte](./7-bank-project/1-template-route/README.md) | Yohan | +| 20 | [Gioco Spaziale](./6-space-game/solution/README.md) | Terminare e riavviare il gioco | Impara a terminare e riavviare il gioco, incluso il ripulire gli asset e il reimpostare i valori delle variabili | [Condizione di Fine](./6-space-game/6-end-condition/README.md) | Chris | +| 21 | [App Bancaria](./7-bank-project/solution/README.md) | Template HTML e Rotte in un'App Web | Impara a creare la struttura dell'architettura di un sito web multipagina utilizzando routing e template HTML | [Template HTML e Rotte](./7-bank-project/1-template-route/README.md) | Yohan | | 22 | [App Bancaria](./7-bank-project/solution/README.md) | Costruire un Modulo di Login e Registrazione | Impara a costruire moduli e gestire routine di validazione | [Moduli](./7-bank-project/2-forms/README.md) | Yohan | -| 23 | [App Bancaria](./7-bank-project/solution/README.md) | Metodi per Recuperare e Utilizzare Dati | Come i dati fluiscono dentro e fuori dalla tua app, come recuperarli, memorizzarli e gestirli | [Dati](./7-bank-project/3-data/README.md) | Yohan | +| 23 | [App Bancaria](./7-bank-project/solution/README.md) | Metodi di Recupero e Utilizzo dei Dati | Come i dati fluiscono dentro e fuori dalla tua app, come recuperarli, memorizzarli e eliminarli | [Dati](./7-bank-project/3-data/README.md) | Yohan | | 24 | [App Bancaria](./7-bank-project/solution/README.md) | Concetti di Gestione dello Stato | Impara come la tua app mantiene lo stato e come gestirlo programmaticamente | [Gestione dello Stato](./7-bank-project/4-state-management/README.md) | Yohan | -| 25 | [Browser/VScode Code](../../8-code-editor) | Lavorare con VScode | Impara a usare un editor di codice | [Usa l'Editor di Codice VScode](./8-code-editor/1-using-a-code-editor/README.md) | Chris | +| 25 | [Browser/VScode Code](../../8-code-editor) | Lavorare con VScode | Impara a utilizzare un editor di codice| [Usa l'Editor di Codice VScode](./8-code-editor/1-using-a-code-editor/README.md) | Chris | | 26 | [Assistenti AI](./9-chat-project/README.md) | Lavorare con l'AI | Impara a costruire il tuo assistente AI | [Progetto Assistente AI](./9-chat-project/README.md) | Chris | ## 🏫 Pedagogia -Il nostro curriculum è progettato seguendo due principi pedagogici chiave: -* apprendimento basato sui progetti +Il nostro curriculum è progettato con due principi pedagogici chiave: +* apprendimento basato su progetti * quiz frequenti -Il programma insegna i fondamenti di JavaScript, HTML e CSS, oltre agli strumenti e alle tecniche più recenti utilizzati dagli sviluppatori web di oggi. Gli studenti avranno l'opportunità di sviluppare esperienza pratica costruendo un gioco di scrittura, un terrario virtuale, un'estensione per browser eco-friendly, un gioco in stile space-invader e un'app bancaria per aziende. Alla fine della serie, gli studenti avranno acquisito una solida comprensione dello sviluppo web. +Il programma insegna i fondamenti di JavaScript, HTML e CSS, oltre agli strumenti e alle tecniche più recenti utilizzati dagli sviluppatori web di oggi. Gli studenti avranno l'opportunità di sviluppare esperienza pratica costruendo un gioco di scrittura, un terrario virtuale, un'estensione per browser eco-friendly, un gioco stile space-invader e un'app bancaria per aziende. Alla fine della serie, gli studenti avranno acquisito una solida comprensione dello sviluppo web. > 🎓 Puoi seguire le prime lezioni di questo curriculum come [Percorso di Apprendimento](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) su Microsoft Learn! -Assicurandoci che il contenuto sia allineato ai progetti, il processo diventa più coinvolgente per gli studenti e la ritenzione dei concetti viene migliorata. Abbiamo anche scritto diverse lezioni introduttive sui fondamenti di JavaScript per introdurre i concetti, abbinate a un video della collezione di tutorial video "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)", alcuni dei cui autori hanno contribuito a questo curriculum. +Assicurandoci che il contenuto sia allineato ai progetti, il processo diventa più coinvolgente per gli studenti e la ritenzione dei concetti sarà aumentata. Abbiamo anche scritto diverse lezioni introduttive sui fondamenti di JavaScript per introdurre i concetti, accompagnate da un video della collezione "[Serie per Principianti: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)", alcuni dei cui autori hanno contribuito a questo curriculum. -Inoltre, un quiz a basso rischio prima della lezione orienta lo studente verso l'apprendimento di un argomento, mentre un secondo quiz dopo la lezione garantisce una maggiore ritenzione. Questo curriculum è stato progettato per essere flessibile e divertente e può essere seguito interamente o in parte. I progetti iniziano in modo semplice e diventano sempre più complessi alla fine del ciclo di 12 settimane. +Inoltre, un quiz a basso rischio prima di una lezione orienta l'intenzione dello studente verso l'apprendimento di un argomento, mentre un secondo quiz dopo la lezione garantisce una maggiore ritenzione. Questo curriculum è stato progettato per essere flessibile e divertente e può essere seguito interamente o in parte. I progetti iniziano piccoli e diventano sempre più complessi entro la fine del ciclo di 12 settimane. -Pur avendo volutamente evitato di introdurre framework JavaScript per concentrarci sulle competenze di base necessarie come sviluppatore web prima di adottare un framework, un buon passo successivo per completare questo curriculum sarebbe imparare Node.js tramite un'altra collezione di video: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)". +Pur avendo volutamente evitato di introdurre framework JavaScript per concentrarci sulle competenze di base necessarie come sviluppatore web prima di adottare un framework, un buon passo successivo per completare questo curriculum sarebbe imparare Node.js tramite un'altra collezione di video: "[Serie per Principianti: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)". -> Visita il nostro [Codice di Condotta](CODE_OF_CONDUCT.md) e le linee guida per [Contribuire](CONTRIBUTING.md). Accogliamo con favore i tuoi feedback costruttivi! +> Visita le nostre [Linee Guida di Condotta](CODE_OF_CONDUCT.md) e [Contributi](CONTRIBUTING.md). Accogliamo con favore il tuo feedback costruttivo! ## 🧭 Accesso offline -Puoi eseguire questa documentazione offline utilizzando [Docsify](https://docsify.js.org/#/). Fai un fork di questo repository, [installa Docsify](https://docsify.js.org/#/quickstart) sul tuo computer locale, e poi nella cartella principale di questo repository, digita `docsify serve`. Il sito web sarà servito sulla porta 3000 del tuo localhost: `localhost:3000`. +Puoi eseguire questa documentazione offline utilizzando [Docsify](https://docsify.js.org/#/). Fai un fork di questo repository, [installa Docsify](https://docsify.js.org/#/quickstart) sulla tua macchina locale, e poi nella cartella principale di questo repository, digita `docsify serve`. Il sito web sarà servito sulla porta 3000 del tuo localhost: `localhost:3000`. ## 📘 PDF @@ -209,6 +207,7 @@ Un PDF di tutte le lezioni può essere trovato [qui](https://microsoft.github.io Il nostro team produce altri corsi! Dai un'occhiata: + ### Azure / Edge / MCP / Agents [![AZD for Beginners](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst) [![Edge AI per Principianti](https://img.shields.io/badge/Edge%20AI%20per%20Principianti-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst) @@ -217,45 +216,47 @@ Il nostro team produce altri corsi! Dai un'occhiata: --- -### Serie AI Generativa -[![AI Generativa per Principianti](https://img.shields.io/badge/AI%20Generativa%20per%20Principianti-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst) -[![AI Generativa (.NET)](https://img.shields.io/badge/AI%20Generativa%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst) -[![AI Generativa (Java)](https://img.shields.io/badge/AI%20Generativa%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst) -[![AI Generativa (JavaScript)](https://img.shields.io/badge/AI%20Generativa%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst) +### Serie sull'AI Generativa +[![AI Generativa per Principianti](https://img.shields.io/badge/Generative%20AI%20per%20Principianti-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst) +[![AI Generativa (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst) +[![AI Generativa (Java)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst) +[![AI Generativa (JavaScript)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst) --- -### Apprendimento Core +### Apprendimento di Base [![ML per Principianti](https://img.shields.io/badge/ML%20per%20Principianti-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst) [![Data Science per Principianti](https://img.shields.io/badge/Data%20Science%20per%20Principianti-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst) [![AI per Principianti](https://img.shields.io/badge/AI%20per%20Principianti-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst) [![Cybersecurity per Principianti](https://img.shields.io/badge/Cybersecurity%20per%20Principianti-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung) -[![Sviluppo Web per Principianti](https://img.shields.io/badge/Sviluppo%20Web%20per%20Principianti-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst) +[![Sviluppo Web per Principianti](https://img.shields.io/badge/Web%20Dev%20per%20Principianti-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst) [![IoT per Principianti](https://img.shields.io/badge/IoT%20per%20Principianti-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst) -[![Sviluppo XR per Principianti](https://img.shields.io/badge/Sviluppo%20XR%20per%20Principianti-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst) +[![Sviluppo XR per Principianti](https://img.shields.io/badge/XR%20Development%20per%20Principianti-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst) --- ### Serie Copilot -[![Copilot per Programmazione AI in Coppia](https://img.shields.io/badge/Copilot%20per%20Programmazione%20AI%20in%20Coppia-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst) +[![Copilot per la Programmazione AI in Coppia](https://img.shields.io/badge/Copilot%20per%20la%20Programmazione%20AI%20in%20Coppia-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst) [![Copilot per C#/.NET](https://img.shields.io/badge/Copilot%20per%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst) -[![Avventura Copilot](https://img.shields.io/badge/Avventura%20Copilot-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst) +[![Avventura Copilot](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst) ## Ottenere Aiuto -Se hai difficoltà o domande sulla creazione di app AI, unisciti a: +Se ti trovi in difficoltà o hai domande sulla creazione di app AI, unisciti ad altri studenti e sviluppatori esperti nelle discussioni su MCP. È una comunità di supporto dove le domande sono benvenute e la conoscenza viene condivisa liberamente. -[![Discord Azure AI Foundry](https://img.shields.io/badge/Discord-Comunità_Azure_AI_Foundry_Discord-blue?style=for-the-badge&logo=discord&color=5865f2&logoColor=fff)](https://aka.ms/foundry/discord) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) -Se hai feedback sui prodotti o riscontri errori durante la creazione, visita: +Se hai feedback sui prodotti o incontri errori durante la creazione, visita: -[![Forum Sviluppatori Azure AI Foundry](https://img.shields.io/badge/GitHub-Forum_Sviluppatori_Azure_AI_Foundry-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) +[![Forum Sviluppatori Microsoft Foundry](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) ## Licenza -Questo repository è concesso sotto licenza MIT. Consulta il file [LICENSE](../../LICENSE) per maggiori informazioni. +Questo repository è concesso in licenza sotto la licenza MIT. Consulta il file [LICENSE](../../LICENSE) per maggiori informazioni. --- -**Disclaimer**: -Questo documento è stato tradotto utilizzando il servizio di traduzione AI [Co-op Translator](https://github.com/Azure/co-op-translator). Sebbene ci impegniamo per garantire l'accuratezza, si prega di notare che le traduzioni automatiche possono contenere errori o imprecisioni. Il documento originale nella sua lingua nativa dovrebbe essere considerato la fonte autorevole. Per informazioni critiche, si raccomanda una traduzione professionale umana. Non siamo responsabili per eventuali incomprensioni o interpretazioni errate derivanti dall'uso di questa traduzione. \ No newline at end of file + +**Disclaimer (Avvertenza)**: +Questo documento è stato tradotto utilizzando il servizio di traduzione automatica [Co-op Translator](https://github.com/Azure/co-op-translator). Sebbene ci impegniamo per garantire l'accuratezza, si prega di notare che le traduzioni automatiche possono contenere errori o imprecisioni. Il documento originale nella sua lingua nativa dovrebbe essere considerato la fonte autorevole. Per informazioni critiche, si raccomanda una traduzione professionale umana. Non siamo responsabili per eventuali incomprensioni o interpretazioni errate derivanti dall'uso di questa traduzione. + \ No newline at end of file diff --git a/translations/mo/1-getting-started-lessons/2-github-basics/README.md b/translations/mo/1-getting-started-lessons/2-github-basics/README.md index 3df9dfe1..150df536 100644 --- a/translations/mo/1-getting-started-lessons/2-github-basics/README.md +++ b/translations/mo/1-getting-started-lessons/2-github-basics/README.md @@ -1,8 +1,8 @@ B{Is it a Git Repository?} - B -->|No| C[git init] - B -->|Yes| D[Make Changes] + A[📁 您的專案檔案] --> B{這是一個 Git 儲存庫嗎?} + B -->|否| C[git init] + B -->|是| D[進行更改] C --> D D --> E[git add .] - E --> F["git commit -m 'message'"] + E --> F["git commit -m '訊息'"] F --> G[git push] - G --> H[🌟 Code on GitHub!] + G --> H[🌟 GitHub 上的程式碼!] - H --> I{Want to collaborate?} - I -->|Yes| J[Fork & Clone] - I -->|No| D - J --> K[Create Branch] - K --> L[Make Changes] + H --> I{想要協作嗎?} + I -->|是| J[Fork & Clone] + I -->|否| D + J --> K[建立分支] + K --> L[進行更改] L --> M[Pull Request] - M --> N[🎉 Contributing!] + M --> N[🎉 貢獻完成!] style A fill:#fff59d style H fill:#c8e6c9 style N fill:#ff4081,color:#fff ``` - ### 任務:創建你的第一個儲存庫! -> 🎯 **你的任務(我真的為你感到興奮!)**:我們將一起創建你的第一個 GitHub 儲存庫!完成後,你將擁有自己的網路角落,存放你的程式碼,並完成你的第一次「提交」(這是開發者用來描述以非常聰明的方式保存工作的術語)。 +> 🎯 **你的任務(我真的為你感到興奮!)**:我們將一起創建你的第一個 GitHub 儲存庫!到我們完成時,你將擁有自己的小角落,存放你的程式碼,並且你將完成你的第一次「提交」(這是開發者用語,指以非常聰明的方式保存你的工作)。 > -> 這真的是一個非常特別的時刻——你即將正式加入全球開發者社群!我仍然記得創建我的第一個儲存庫時的激動,心想「哇,我真的在做這件事!」 +> 這真的是一個特別的時刻——你即將正式加入全球開發者社群!我仍然記得創建我的第一個儲存庫時的激動,心想「哇,我真的在做這件事!」 -讓我們一起一步步完成這次冒險。每個部分都慢慢來——匆忙是沒有獎勵的,我保證每一步都會有意義。記住,每個你崇拜的程式設計明星都曾經坐在你現在的位置,準備創建他們的第一個儲存庫。這是不是很酷? +讓我們一起一步步完成這次冒險。每個部分都慢慢來——匆忙是沒有獎勵的,我保證每一步都會有意義。記住,每個你崇拜的程式設計明星曾經都坐在你現在的位置,準備創建他們的第一個儲存庫。這是不是很酷? > 查看影片 > @@ -171,11 +169,11 @@ flowchart TD 以下是該做的事情: 1. 為你的儲存庫命名——取一個對你有意義的名字! 1. 如果你願意,可以添加描述(這有助於其他人了解你的專案是什麼) - 1. 決定是否要設置為公開(每個人都可以看到)或私人(僅供你使用) + 1. 決定是否要公開(每個人都可以看到)或私密(只有你能看到) 1. 我建議勾選添加 README 文件的選項——它就像你的專案的首頁 1. 點擊 **Create repository** 並慶祝——你剛剛創建了你的第一個儲存庫!🎉 -2. **導航到你的專案資料夾**。現在讓我們打開你的終端(別擔心,它看起來並沒有那麼可怕!)。我們需要告訴你的電腦你的專案文件在哪裡。輸入以下指令: +2. **導航到你的專案資料夾**。現在讓我們打開你的終端機(別擔心,它看起來並沒有那麼可怕!)。我們需要告訴你的電腦你的專案文件在哪裡。輸入以下指令: ```bash cd [name of your folder] @@ -186,18 +184,18 @@ flowchart TD - 這就像在桌面上打開一個特定的資料夾,但我們是用文字指令來完成的 - 將 `[name of your folder]` 替換為你的專案資料夾的實際名稱 -3. **將你的資料夾轉換為 Git 儲存庫**。這是魔法發生的地方!輸入: +3. **將你的資料夾變成 Git 儲存庫**。這是魔法發生的地方!輸入: ```bash git init ``` - **剛剛發生了什麼(很酷的事情!):** + **這裡剛剛發生了什麼(很酷的事情!):** - Git 剛剛在你的專案中創建了一個隱藏的 `.git` 資料夾——你不會看到它,但它確實存在! - 你的普通資料夾現在是一個「儲存庫」,可以追蹤你所做的每個改變 - 把它想像成給你的資料夾超能力,記住一切 -4. **檢查發生了什麼**。讓我們看看 Git 對你的專案現在的看法: +4. **檢查發生了什麼**。讓我們看看 Git 現在對你的專案有什麼看法: ```bash git status @@ -217,11 +215,11 @@ flowchart TD ``` **別慌!這意味著:** - - **紅色**的文件是有改變但尚未準備好保存的文件 + - **紅色**的文件是有改變但還沒準備好保存的文件 - **綠色**的文件(當你看到它們時)是準備好保存的文件 - Git 很貼心地告訴你接下來可以做什麼 - > 💡 **專業提示**:`git status` 指令是你的好朋友!每當你對發生的事情感到困惑時都可以使用它。這就像在問 Git「嘿,現在的情況如何?」 + > 💡 **專業提示**:`git status` 指令是你的好朋友!每當你對發生的事情感到困惑時使用它。這就像問 Git「嘿,現在的情況如何?」 5. **讓你的文件準備好保存**(這叫做「暫存」): @@ -231,7 +229,7 @@ flowchart TD **我們剛剛做了什麼:** - 我們告訴 Git「嘿,我想在下一次保存中包含所有文件」 - - `.` 就像在說「這個資料夾中的所有內容」 + - `.` 就像在說「這個資料夾中的所有東西」 - 現在你的文件已經「暫存」,準備好進入下一步 **想更有選擇性嗎?** 你可以只添加特定文件: @@ -241,21 +239,21 @@ flowchart TD ``` **為什麼你可能想這樣做?** - - 有時你想將相關的改變一起保存 + - 有時候你想把相關的改變一起保存 - 它幫助你將工作組織成邏輯塊 - 讓你更容易理解什麼時候改變了什麼 - **改變主意了嗎?** 別擔心!你可以像這樣取消暫存文件: + **改變主意了?** 別擔心!你可以像這樣取消暫存文件: ```bash - # Unstage everything + # 取消暫存所有內容 git reset - # Unstage just one file + # 只取消暫存一個檔案 git reset [file name] ``` - 別擔心——這不會刪除你的工作,只是將文件從「準備保存」的堆中移出。 + 別擔心——這不會刪除你的工作,只是把文件從「準備保存」的堆中移出。 6. **永久保存你的工作**(進行你的第一次提交!): @@ -265,13 +263,13 @@ flowchart TD **🎉 恭喜!你剛剛完成了你的第一次提交!** - **剛剛發生了什麼:** - - Git 在這個確切的時刻為你所有的暫存文件拍了一張「快照」 + **這裡剛剛發生了什麼:** + - Git 在這個確切的時刻對所有暫存文件拍了一個「快照」 - 你的提交訊息「first commit」解釋了這個保存點的內容 - - Git 為這個快照分配了一個唯一的 ID,讓你以後可以隨時找到它 + - Git 給這個快照分配了一個唯一的 ID,讓你以後可以隨時找到它 - 你正式開始追蹤你的專案歷史了! - > 💡 **未來的提交訊息**:對於你的下一次提交,請更具描述性!不要用「updated stuff」,試試「Add contact form to homepage」或「Fix navigation menu bug」。你的未來自己會感謝你! + > 💡 **未來的提交訊息**:對於你的下一次提交,請更具描述性!不要用「更新了一些東西」,試試「添加了首頁的聯絡表單」或「修復了導航菜單的錯誤」。你的未來自己會感謝你! 7. **將你的本地專案連接到 GitHub**。現在,你的專案只存在於你的電腦上。讓我們將它連接到你的 GitHub 儲存庫,這樣你就可以與世界分享它! @@ -281,36 +279,37 @@ flowchart TD git remote add origin https://github.com/username/repository_name.git ``` - (用你的實際儲存庫 URL 替換該 URL!) -**我們剛剛做了什麼:** -- 我們建立了本地專案與 GitHub 儲存庫之間的連接 -- "Origin" 只是你的 GitHub 儲存庫的暱稱——就像在手機中新增一個聯絡人 -- 現在你的本地 Git 知道該將你的程式碼發送到哪裡,當你準備分享時 + (用你的實際儲存庫 URL 替換它!) + + **我們剛剛做了什麼:** + - 我們已經建立了本地項目與 GitHub 儲存庫之間的連接 + - "Origin" 只是你的 GitHub 儲存庫的一個暱稱——就像在手機裡添加一個聯絡人 + - 現在你的本地 Git 知道該把程式碼發送到哪裡,當你準備分享時 -💡 **更簡單的方法**:如果你已安裝 GitHub CLI,你可以用一條指令完成: + 💡 **更簡單的方法**:如果你已安裝 GitHub CLI,只需一條指令即可完成: ```bash gh repo create my-repo --public --push --source=. ``` -8. **將你的程式碼發送到 GitHub**(重要時刻!): +8. **將程式碼發送到 GitHub**(重要時刻!): ```bash git push -u origin main ``` -**🚀 就是這樣!你正在將程式碼上傳到 GitHub!** - -**發生了什麼:** -- 你的提交正在從你的電腦傳送到 GitHub -- `-u` 標誌建立了永久連接,讓未來的推送更簡單 -- "main" 是你的主要分支的名稱(就像主要資料夾) -- 之後,你只需輸入 `git push` 就能進行未來的上傳! + **🚀 就是這樣!你正在將程式碼上傳到 GitHub!** + + **發生了什麼:** + - 你的提交正在從電腦傳送到 GitHub + - `-u` 標誌建立了永久連接,讓未來的推送更簡單 + - "main" 是你的主要分支的名稱(就像主要的資料夾) + - 之後,你只需輸入 `git push` 就能完成未來的上傳! -💡 **快速提示**:如果你的分支名稱是其他名稱(例如 "master"),請使用該名稱。你可以使用 `git branch --show-current` 來檢查。 + 💡 **快速提示**:如果你的分支叫其他名字(例如 "master"),請使用該名稱。你可以用 `git branch --show-current` 檢查。 -9. **你的新日常編碼節奏**(這是上癮的開始!): +9. **你的新日常編程節奏**(這是上癮的開始!): -從現在開始,每當你對專案進行更改時,你只需進行以下簡單的三步驟: + 從現在開始,每次對項目進行更改時,你只需進行這簡單的三步驟: ```bash git add . @@ -318,145 +317,143 @@ flowchart TD git push ``` -**這將成為你的編碼節奏:** -- 對你的程式碼進行一些精彩的更改 ✨ -- 使用 `git add` 將它們暫存("嘿 Git,注意這些更改!") -- 使用 `git commit` 和描述性訊息保存它們(未來的你會感謝自己!) -- 使用 `git push` 與世界分享 🚀 -- 重複以上步驟——真的,這會變得像呼吸一樣自然! + **這成為你的編程節奏:** + - 對程式碼進行一些精彩的更改 ✨ + - 用 `git add` 暫存它們("嘿 Git,注意這些更改!") + - 用 `git commit` 和描述性訊息保存它們(未來的你會感謝自己!) + - 用 `git push` 與世界分享 🚀 + - 重複以上步驟——真的,這會變得像呼吸一樣自然! -我喜歡這個工作流程,因為它就像在玩電子遊戲時有多個存檔點。做了一個你喜歡的更改?提交它!想嘗試一些冒險的事情?沒問題——如果事情不順利,你隨時可以回到上次的提交! + 我喜歡這個工作流程,因為它就像在玩電子遊戲時有多個存檔點。做了一個你喜歡的更改?提交它!想嘗試一些冒險的東西?沒問題——如果事情出錯,你總是可以回到上次提交! -> 💡 **提示**:你可能也想採用 `.gitignore` 文件,防止你不想追蹤的文件出現在 GitHub 上——例如存放在同一資料夾中的筆記文件,但不適合放在公共儲存庫中。你可以在[.gitignore templates](https://github.com/github/gitignore)找到 `.gitignore` 文件的範本,或者使用 [gitignore.io](https://www.toptal.com/developers/gitignore) 創建一個。 + > 💡 **提示**:你可能還想採用 `.gitignore` 文件,防止你不想追蹤的文件出現在 GitHub 上——例如存放在同一資料夾但不適合公開儲存庫的筆記文件。你可以在 [.gitignore templates](https://github.com/github/gitignore) 找到 `.gitignore` 文件模板,或使用 [gitignore.io](https://www.toptal.com/developers/gitignore) 創建一個。 ### 🧠 **第一次儲存庫檢查:感覺如何?** **花點時間慶祝並反思:** -- 第一次看到你的程式碼出現在 GitHub 上是什麼感覺? -- 哪一步感覺最困惑,哪一步感覺出乎意料地簡單? +- 第一次看到你的程式碼出現在 GitHub 上感覺如何? +- 哪一步最讓你困惑,哪一步出乎意料地簡單? - 你能用自己的話解釋 `git add`、`git commit` 和 `git push` 的區別嗎? ```mermaid stateDiagram-v2 - [*] --> LocalFiles: Create project + [*] --> LocalFiles: 建立專案 LocalFiles --> Staged: git add . Staged --> Committed: git commit Committed --> GitHub: git push - GitHub --> [*]: Success! 🎉 + GitHub --> [*]: 成功!🎉 note right of Staged - Files ready to save + 檔案準備儲存 end note note right of Committed - Snapshot created + 快照已建立 end note ``` - -> **記住**:即使是有經驗的開發者有時也會忘記確切的指令。讓這個工作流程成為肌肉記憶需要練習——你做得很棒! +> **記住**:即使是有經驗的開發者有時也會忘記確切的指令。讓這個工作流程成為肌肉記憶需要練習——你做得很好! #### 現代 Git 工作流程 -考慮採用以下現代化的做法: +考慮採用以下現代化做法: - **標準化提交**:使用標準化的提交訊息格式,例如 `feat:`、`fix:`、`docs:` 等。了解更多請訪問 [conventionalcommits.org](https://www.conventionalcommits.org/) -- **原子提交**:讓每次提交代表一個邏輯上的改變 -- **頻繁提交**:經常提交,使用描述性訊息,而不是大規模、不頻繁的提交 +- **原子提交**:讓每次提交代表一個單一的邏輯更改 +- **頻繁提交**:經常提交,並使用描述性訊息,而不是大而不頻繁的提交 #### 提交訊息 -一個好的 Git 提交主題行應該能完成以下句子: +一條好的 Git 提交主題行應完成以下句子: 如果應用,這次提交將 <你的主題行> -主題應使用祈使句現在時態:"change" 而不是 "changed" 或 "changes"。 -在主題中使用祈使句現在時態,在正文(可選)中也使用祈使句現在時態。正文應包括更改的動機,並與之前的行為進行對比。你是在解釋 `為什麼`,而不是 `如何`。 +主題使用命令式現在時態:"change" 而不是 "changed" 或 "changes"。 +在主題中,正文(可選)也使用命令式現在時態。正文應包括更改的動機,並與之前的行為形成對比。你是在解釋 `為什麼`,而不是 `如何`。 -✅ 花幾分鐘瀏覽 GitHub。你能找到一個非常棒的提交訊息嗎?你能找到一個非常簡短的嗎?你認為在提交訊息中最重要和最有用的信息是什麼? +✅ 花幾分鐘瀏覽 GitHub。你能找到一條非常棒的提交訊息嗎?你能找到一條非常簡單的嗎?你認為在提交訊息中傳達哪些信息最重要和有用? ## 與他人合作(最有趣的部分!) -準備好你的帽子,因為這是 GitHub 變得非常神奇的地方!🪄 你已經掌握了管理自己程式碼的技巧,但現在我們要深入我最喜歡的部分——與來自世界各地的出色人才合作。 +準備好你的帽子,因為 GitHub 的魔力就在這裡!🪄 你已經掌握了管理自己的程式碼,但現在我們要深入我最喜歡的部分——與來自世界各地的驚人人才合作。 -想像一下:你明天醒來,發現東京的一個人改進了你的程式碼,而你在睡覺時,柏林的一個人修復了你一直困擾的錯誤。到了下午,聖保羅的一位開發者添加了一個你從未想過的功能。這不是科幻小說——這只是 GitHub 世界中的普通一天! +想像一下:你明天醒來,發現東京的一位開發者在你睡覺時改進了你的程式碼。然後柏林的一位開發者修復了你一直卡住的錯誤。到了下午,聖保羅的一位開發者添加了一個你從未想到的功能。這不是科幻小說——這只是 GitHub 世界裡的普通一天! -讓我真正興奮的是,你即將學到的合作技能?這些正是 Google、Microsoft 和你最喜歡的初創公司每天使用的工作流程。你不僅僅是在學習一個酷炫的工具——你是在學習讓整個軟體世界共同運作的秘密語言。 +讓我真正興奮的是,你即將學到的合作技能?這些正是 Google、Microsoft 和你最喜歡的初創公司每天使用的工作流程。你不僅僅是在學習一個酷工具——你是在學習讓整個軟件世界一起工作的秘密語言。 -真的,當你第一次體驗到有人合併你的拉取請求的快感時,你就會明白為什麼開發者對開源如此充滿熱情。這就像成為世界上最大、最具創意的團隊項目的一部分! +真的,當你第一次體驗到有人合併你的拉取請求的快感時,你就會明白為什麼開發者對開源如此熱情。這就像參與世界上最大、最有創意的團隊項目! > 查看影片 > > [![Git 和 GitHub 基礎影片](https://img.youtube.com/vi/bFCM-PC3cu8/0.jpg)](https://www.youtube.com/watch?v=bFCM-PC3cu8) -將內容放到 GitHub 上的主要原因是使與其他開發者的合作成為可能。 +將項目放到 GitHub 上的主要原因是讓與其他開發者合作成為可能。 ```mermaid flowchart LR - A[🔍 Find Project] --> B[🍴 Fork Repository] - B --> C[📥 Clone to Local] - C --> D[🌿 Create Branch] - D --> E[✏️ Make Changes] - E --> F[💾 Commit Changes] - F --> G[📤 Push Branch] - G --> H[🔄 Create Pull Request] - H --> I{Maintainer Review} - I -->|✅ Approved| J[🎉 Merge!] - I -->|❓ Changes Requested| K[📝 Make Updates] + A[🔍 尋找項目] --> B[🍴 分叉倉庫] + B --> C[📥 克隆到本地] + C --> D[🌿 創建分支] + D --> E[✏️ 進行更改] + E --> F[💾 提交更改] + F --> G[📤 推送分支] + G --> H[🔄 創建拉取請求] + H --> I{維護者審查} + I -->|✅ 批准| J[🎉 合併!] + I -->|❓ 要求更改| K[📝 進行更新] K --> F - J --> L[🧹 Clean Up Branches] + J --> L[🧹 清理分支] style A fill:#e3f2fd style J fill:#e8f5e8 style L fill:#fff3e0 ``` +在你的儲存庫中,導航到 `Insights > Community`,看看你的項目如何與推薦的社區標準相比。 -在你的儲存庫中,導航到 `Insights > Community`,看看你的專案如何與推薦的社群標準進行比較。 - -想讓你的儲存庫看起來專業且吸引人嗎?前往你的儲存庫,點擊 `Insights > Community`。這個很酷的功能會顯示你的專案如何與 GitHub 社群認為的 "良好儲存庫實踐" 相比。 +想讓你的儲存庫看起來專業且吸引人?前往你的儲存庫,點擊 `Insights > Community`。這個酷功能會顯示你的項目如何與 GitHub 社區認為的 "良好儲存庫做法" 相比。 -> 🎯 **讓你的專案更出色**:一個組織良好的儲存庫,配有良好的文件,就像擁有一個乾淨、吸引人的店面。它告訴人們你對自己的工作很在意,並讓其他人想要貢獻! +> 🎯 **讓你的項目更出色**:一個組織良好的儲存庫,配有良好的文檔,就像擁有一個乾淨、吸引人的店面。它告訴人們你重視自己的工作,並讓其他人想要參與! -**以下是讓儲存庫變得出色的要素:** +**以下是讓儲存庫出色的要素:** | 添加內容 | 為什麼重要 | 對你的幫助 | -|----------|------------|------------| -| **描述** | 第一印象很重要! | 人們能立即知道你的專案是做什麼的 | -| **README** | 你的專案首頁 | 就像新訪客的友好導遊 | -| **貢獻指南** | 表明你歡迎幫助 | 人們能確切知道如何幫助你 | -| **行為準則** | 創造友好的空間 | 每個人都感到受歡迎 | +|-------------|-------------------|---------------------| +| **描述** | 第一印象很重要! | 人們能立即知道你的項目是做什麼的 | +| **README** | 你的項目的首頁 | 就像新訪客的友好導遊 | +| **貢獻指南** | 表明你歡迎幫助 | 人們知道如何幫助你 | +| **行為準則** | 創造友好的空間 | 每個人都感到參與的歡迎 | | **許可證** | 法律清晰 | 其他人知道如何使用你的程式碼 | -| **安全政策** | 表明你負責任 | 展示專業的做法 | +| **安全政策** | 表明你負責任 | 展示專業做法 | -> 💡 **專業提示**:GitHub 提供這些文件的範本。在創建新儲存庫時,勾選框以自動生成這些文件。 +> 💡 **專業提示**:GitHub 提供這些文件的模板。創建新儲存庫時,勾選框以自動生成這些文件。 **現代 GitHub 功能探索:** -🤖 **自動化與 CI/CD:** +🤖 **自動化 & CI/CD:** - **GitHub Actions** 用於自動化測試和部署 - **Dependabot** 用於自動依賴更新 -💬 **社群與專案管理:** -- **GitHub Discussions** 用於超越問題的社群對話 -- **GitHub Projects** 用於看板式專案管理 +💬 **社區 & 項目管理:** +- **GitHub Discussions** 用於超越問題的社區對話 +- **GitHub Projects** 用於看板式項目管理 - **分支保護規則** 用於強制執行程式碼質量標準 -所有這些資源都將有助於新團隊成員的入職。而這些通常是新貢獻者在查看你的程式碼之前會看的東西,以了解你的專案是否是他們應該花時間的地方。 +所有這些資源將有助於新團隊成員的入職。而這些通常是新貢獻者在查看你的程式碼之前會看的東西,以了解你的項目是否值得他們花時間。 -✅ README 文件雖然需要時間準備,但經常被忙碌的維護者忽略。你能找到一個特別描述性強的例子嗎?注意:有一些[工具可以幫助創建好的 README](https://www.makeareadme.com/) 你可能會想試試。 +✅ README 文件,雖然需要時間準備,但經常被忙碌的維護者忽略。你能找到一個特別描述性強的例子嗎?注意:有一些 [工具可以幫助創建好的 README](https://www.makeareadme.com/) 你可能會想嘗試。 ### 任務:合併一些程式碼 -貢獻文件幫助人們為專案做出貢獻。它解釋了你希望的貢獻類型以及流程如何運作。貢獻者需要完成一系列步驟才能在 GitHub 上為你的儲存庫做出貢獻: +貢獻文檔幫助人們為項目做出貢獻。它解釋了你希望的貢獻類型以及流程如何運作。貢獻者需要完成一系列步驟才能為你的 GitHub 儲存庫做出貢獻: -1. **Fork 你的儲存庫** 你可能希望人們 _fork_ 你的專案。Fork 意味著在他們的 GitHub 個人檔案上創建你的儲存庫的副本。 -1. **Clone**。接著他們會將專案克隆到本地機器。 +1. **分叉你的儲存庫** 你可能希望人們 _分叉_ 你的項目。分叉意味著在他們的 GitHub 個人檔案上創建你的儲存庫的副本。 +1. **克隆**。接著他們會將項目克隆到本地機器。 1. **創建分支**。你會希望要求他們為自己的工作創建一個 _分支_。 -1. **專注於一個區域的更改**。要求貢獻者將貢獻集中在一件事上——這樣你能 _合併_ 他們工作的機率更高。想像他們寫了一個錯誤修復,添加了一個新功能,並更新了幾個測試——如果你只想或只能實施其中的 2 個或 1 個更改呢? +1. **專注於一個區域的更改**。要求貢獻者一次專注於一件事——這樣你能 _合併_ 他們工作的可能性更高。想像他們寫了一個錯誤修復,添加了一個新功能,並更新了幾個測試——如果你只想或只能實施其中的 2 個或 1 個更改怎麼辦? -✅ 想像一個分支在撰寫和交付良好程式碼中特別重要的情況。你能想到哪些使用案例? +✅ 想像一個分支在撰寫和交付良好程式碼中特別重要的情況。你能想到哪些使用場景? -> 注意,成為你希望看到的改變,並為自己的工作創建分支。你所做的任何提交都將在你目前 "檢出" 的分支上進行。使用 `git status` 查看是哪個分支。 +> 注意,成為你想看到的改變,並為自己的工作創建分支。你所做的任何提交都將在你當前 "檢出" 的分支上完成。使用 `git status` 查看是哪個分支。 -讓我們來看看貢獻者的工作流程。假設貢獻者已經 _fork_ 並 _clone_ 了儲存庫,因此他們有一個準備好工作的 Git 儲存庫在本地機器上: +讓我們來看看貢獻者的工作流程。假設貢獻者已經 _分叉_ 並 _克隆_ 了儲存庫,因此他們有一個準備好工作的 Git 儲存庫在本地機器上: 1. **創建分支**。使用指令 `git branch` 創建一個分支,該分支將包含他們打算貢獻的更改: @@ -469,44 +466,44 @@ flowchart LR git switch -c [branch-name] ``` -1. **切換到工作分支**。切換到指定分支並使用 `git switch` 更新工作目錄: +1. **切換到工作分支**。切換到指定分支並用 `git switch` 更新工作目錄: ```bash git switch [branch-name] ``` - > 💡 **現代提示**:`git switch` 是更改分支時取代 `git checkout` 的現代替代方案。它更清晰且對初學者更安全。 + > 💡 **現代提示**:`git switch` 是更改分支時 `git checkout` 的現代替代品。它更清晰且對初學者更安全。 -1. **進行工作**。此時你可以添加你的更改。不要忘記用以下指令告訴 Git: +1. **進行工作**。此時你可以添加更改。別忘了用以下指令告訴 Git: ```bash git add . git commit -m "my changes" ``` - > ⚠️ **提交訊息質量**:確保你給你的提交取一個好名字,既為自己,也為你幫助的儲存庫維護者。具體說明你改變了什麼! + > ⚠️ **提交訊息質量**:確保你給提交起一個好名字,既為自己,也為你幫助的儲存庫維護者。具體說明你改變了什麼! -1. **與 `main` 分支合併你的工作**。某個時候你完成了工作,並希望將你的工作與 `main` 分支的工作合併。`main` 分支可能在此期間發生了變化,因此請確保首先使用以下指令更新它: +1. **與 `main` 分支合併你的工作**。某個時候你完成了工作,並希望將你的工作與 `main` 分支的工作合併。`main` 分支可能在此期間發生了變化,因此請確保首先用以下指令更新它: ```bash git switch main git pull ``` - 此時你需要確保任何 _衝突_(Git 無法輕易 _合併_ 的情況)發生在你的工作分支。因此執行以下指令: + 此時你需要確保任何 _衝突_,即 Git 無法輕易 _合併_ 的更改發生在你的工作分支。因此執行以下指令: ```bash git switch [branch_name] git merge main ``` - `git merge main` 指令將把 `main` 的所有更改帶入你的分支。希望你可以直接繼續。如果不行,VS Code 會告訴你 Git _困惑_ 的地方,你只需修改受影響的文件,指出哪個內容最準確。 + `git merge main` 指令將把 `main` 的所有更改帶入你的分支。希望你可以直接繼續。如果不行,VS Code 會告訴你 Git _困惑_ 的地方,你只需更改受影響的文件,指出哪個內容最準確。 - 💡 **現代替代方案**:考慮使用 `git rebase` 以獲得更清晰的歷史: + 💡 **現代替代品**:考慮使用 `git rebase` 以獲得更清晰的歷史: ```bash git rebase main ``` - 這會將你的提交重新播放到最新的 main 分支之上,創建線性歷史。 + 這會將你的提交重播到最新的 main 分支之上,創建線性歷史。 1. **將你的工作發送到 GitHub**。將你的工作發送到 GitHub 意味著兩件事。將你的分支推送到你的儲存庫,然後打開一個 PR(拉取請求)。 @@ -514,114 +511,112 @@ flowchart LR git push --set-upstream origin [branch-name] ``` - 上述指令會在你的 fork 儲存庫中創建分支。 + 上述指令會在你的分叉儲存庫上創建分支。 ### 🤝 **合作技能檢查:準備好與他人合作了嗎?** -**看看你對合作的感覺:** -- Fork 和拉取請求的概念現在對你來說是否清楚了? -- 關於使用分支,你最想多練習的是什麼? -- 你對為別人的專案做出貢獻感到多舒適? +**看看你對合作的感覺如何:** +- 分叉和拉取請求的概念現在對你來說是否清晰? +- 關於使用分支,你最想多練習什麼? +- 你對為別人的項目做貢獻感到多大程度的舒適? ```mermaid mindmap - root((Git Collaboration)) + root((Git 協作)) Branching - Feature branches - Bug fix branches - Experimental work + 功能分支 + 修復錯誤分支 + 實驗性工作 Pull Requests - Code review - Discussion - Testing + 代碼審查 + 討論 + 測試 Best Practices - Clear commit messages - Small focused changes - Good documentation + 清晰的提交訊息 + 小而專注的更改 + 良好的文檔 ``` +> **信心提升**:你所崇拜的每一位開發者都曾對自己的第一次拉取請求感到緊張。GitHub 社區對新手非常友好! -> **信心提升**:你所崇拜的每一位開發者都曾對自己的第一次拉取請求感到緊張。GitHub 社群對新手非常友好! - -1. **打開 PR**。接下來,你需要打開一個 PR。你可以通過導航到 GitHub 上的 fork 儲存庫來完成。你會在 GitHub 上看到一個指示,詢問你是否想創建一個新的 PR,點擊它,你會進入一個介面,可以更改提交訊息標題,給它一個更合適的描述。現在你 fork 的儲存庫的維護者會看到這個 PR,_希望_ 他們會欣賞並 _合併_ 你的 PR。你現在是一名貢獻者,太棒了 :) +1. **打開一個 PR**。接下來,你需要打開一個 PR。你可以通過導航到 GitHub 上的分叉儲存庫來完成。你會在 GitHub 上看到一個指示,詢問你是否想創建一個新的 PR,點擊它,你會進入一個界面,可以更改提交訊息標題,給它一個更合適的描述。現在你分叉的儲存庫的維護者會看到這個 PR,_希望_ 他們會欣賞並 _合併_ 你的 PR。你現在是一名貢獻者,太棒了 :) 💡 **現代提示**:你也可以使用 GitHub CLI 創建 PR: ```bash gh pr create --title "Your PR title" --body "Description of changes" ``` - 🔧 **PR 的最佳實踐**: + 🔧 **PR 的最佳做法**: - 使用關鍵字(例如 "Fixes #123")鏈接相關問題 - 為 UI 更改添加截圖 - 請求特定的審查者 - 使用草稿 PR 表示正在進行的工作 - 確保所有 CI 檢查通過後再請求審查 -1. **清理**。在成功合併 PR 後進行清理被認為是良好的習慣。你需要清理本地分支以及推送到 GitHub 的分支。首先,使用以下指令刪除本地分支: +1. **清理**。在成功合併 PR 後,進行清理工作是一個良好的習慣。你需要清理本地分支以及推送到 GitHub 的分支。首先,使用以下指令刪除本地分支: ```bash git branch -d [branch-name] ``` - 接著,前往 GitHub 頁面,找到你分叉的倉庫,並移除你剛剛推送的遠端分支。 + 接著,前往 GitHub 頁面,移除你剛剛推送的遠端分支。 -`Pull request` 這個詞聽起來有點奇怪,因為實際上你是想將你的更改推送到專案中。但專案的維護者(專案擁有者)或核心團隊需要在合併到專案的 "main" 分支之前審核你的更改,因此你實際上是在向維護者請求更改的決定。 +`Pull request` 這個詞聽起來有點奇怪,因為實際上你是想將你的更改推送到專案中。但專案的維護者(專案擁有者)或核心團隊需要在合併到專案的 "main" 分支之前審核你的更改,因此你實際上是在向維護者請求一個更改的決定。 -Pull request 是一個比較和討論分支中引入的差異的地方,包含審核、評論、整合測試等功能。一個好的 pull request 大致遵循與提交訊息相同的規則。當你的工作解決了一個問題時,你可以在問題追蹤器中引用該問題。這可以通過使用 `#` 後接問題編號來完成。例如 `#97`。 +Pull request 是一個比較和討論分支所引入差異的地方,包含審核、評論、整合測試等功能。一個好的 pull request 大致遵循與提交訊息相同的規則。例如,當你的工作解決了一個問題時,你可以在問題追蹤器中引用該問題。這可以透過使用 `#` 加上問題編號來完成,例如 `#97`。 -🤞希望所有檢查都通過,並且專案擁有者成功合併你的更改到專案中🤞 +🤞希望所有檢查都通過,並且專案擁有者合併你的更改到專案中🤞 -更新你當前的本地工作分支,將 GitHub 上對應的遠端分支中的所有新提交拉取下來: +更新你目前的本地工作分支,將 GitHub 上對應的遠端分支的所有新提交拉取下來: `git pull` -## 貢獻開源專案(你的影響力機會!) +## 貢獻開源專案(你的機會來了!) -準備好迎接一件會讓你大開眼界的事情了嗎?🤯 讓我們來聊聊如何貢獻開源專案——光是想到要和你分享這件事就讓我感到興奮! +準備好迎接一件會讓你大開眼界的事情嗎?🤯 讓我們來聊聊如何貢獻開源專案——光是想到要和你分享這些內容就讓我激動不已! -這是你成為非凡事物一部分的機會。想像一下,改進每天數百萬開發者使用的工具,或者修復你朋友喜愛的應用程式中的一個 bug。這不僅僅是夢想——這就是開源貢獻的全部! +這是你成為某些非凡事物一部分的機會。想像一下,改進每天有數百萬開發者使用的工具,或者修復你朋友喜愛的應用程式中的一個 bug。這不僅僅是夢想——這就是開源貢獻的意義! -每次想到這件事我都會感到激動:你所學習的每一個工具——你的程式碼編輯器、我們將探索的框架,甚至你正在閱讀這篇文章的瀏覽器——都始於某個和你一樣的人,第一次顫抖著手點擊 "create pull request"。 +每次想到這件事都讓我感到激動:你所學習的每一個工具——你的程式碼編輯器、我們將探索的框架,甚至你正在閱讀的瀏覽器——都始於某個人像你一樣,第一次貢獻的那一刻。那位開發者建立了你最喜歡的 VS Code 擴展?他們曾經也是一個初學者,手顫顫地點擊 "create pull request",就像你即將做的一樣。 -最美妙的部分是:開源社群就像互聯網上最大的擁抱。大多數專案都積極尋找新手,並標記了 "good first issue" 的問題,專門為像你這樣的人準備!維護者看到新貢獻者時真的會感到興奮,因為他們記得自己第一次踏出那一步的感覺。 +最美妙的部分是:開源社群就像互聯網上最大的擁抱。大多數專案都積極尋找新手,並標記 "good first issue" 的問題,專門為像你這樣的人準備!維護者看到新貢獻者時真的會感到興奮,因為他們記得自己第一次踏出的那一步。 ```mermaid flowchart TD - A[🔍 Explore GitHub] --> B[🏷️ Find "good first issue"] - B --> C[📖 Read Contributing Guidelines] - C --> D[🍴 Fork Repository] - D --> E[💻 Set Up Local Environment] - E --> F[🌿 Create Feature Branch] - F --> G[✨ Make Your Contribution] - G --> H[🧪 Test Your Changes] - H --> I[📝 Write Clear Commit] - I --> J[📤 Push & Create PR] - J --> K[💬 Engage with Feedback] - K --> L[🎉 Merged! You're a Contributor!] - L --> M[🌟 Find Next Issue] + A[🔍 探索 GitHub] --> B[🏷️ 尋找 "適合初學者的問題"] + B --> C[📖 閱讀貢獻指南] + C --> D[🍴 分叉倉庫] + D --> E[💻 設置本地環境] + E --> F[🌿 創建功能分支] + F --> G[✨ 做出您的貢獻] + G --> H[🧪 測試您的更改] + H --> I[📝 撰寫清晰的提交] + I --> J[📤 推送並創建 PR] + J --> K[💬 回應反饋] + K --> L[🎉 合併!您是貢獻者!] + L --> M[🌟 尋找下一個問題] style A fill:#e1f5fe style L fill:#c8e6c9 style M fill:#fff59d ``` +你不僅僅是在學習程式碼——你正在準備加入一個全球性的建設者家庭,他們每天醒來都在思考 "我們如何讓數位世界變得更好一些?" 歡迎加入這個俱樂部!🌟 -你不僅僅是在學習程式碼——你正在準備加入一個全球性的建設者大家庭,他們每天醒來都在思考 "我們如何讓數位世界變得更好一點?" 歡迎加入這個俱樂部!🌟 +首先,讓我們在 GitHub 上找到一個你感興趣並希望貢獻更改的儲存庫(或 **repo**)。你需要將其內容複製到你的電腦上。 -首先,讓我們在 GitHub 上找到一個你感興趣並希望貢獻更改的倉庫(或 **repo**)。你需要將其內容複製到你的電腦上。 +✅ 找到 "適合初學者" 的儲存庫的一個好方法是 [透過標籤 'good-first-issue' 進行搜尋](https://github.blog/2020-01-22-browse-good-first-issues-to-start-contributing-to-open-source/)。 -✅ 找到適合初學者的倉庫的一個好方法是 [透過標籤 'good-first-issue' 進行搜尋](https://github.blog/2020-01-22-browse-good-first-issues-to-start-contributing-to-open-source/)。 +![本地複製儲存庫](../../../../translated_images/clone_repo.5085c48d666ead57664f050d806e325d7f883be6838c821e08bc823ab7c66665.mo.png) -![本地複製倉庫](../../../../translated_images/clone_repo.5085c48d666ead57664f050d806e325d7f883be6838c821e08bc823ab7c66665.mo.png) +有幾種複製程式碼的方法。一種方法是使用 HTTPS、SSH 或 GitHub CLI(命令列介面)來 "克隆" 儲存庫的內容。 -有幾種複製程式碼的方法。一種方法是使用 HTTPS、SSH 或 GitHub CLI(命令列介面)來 "克隆" 倉庫的內容。 - -打開你的終端機,像這樣克隆倉庫: +打開你的終端機,像這樣克隆儲存庫: ```bash -# Using HTTPS +# 使用 HTTPS git clone https://github.com/ProjectURL -# Using SSH (requires SSH key setup) +# 使用 SSH(需要設置 SSH 密鑰) git clone git@github.com:username/repository.git -# Using GitHub CLI +# 使用 GitHub CLI gh repo clone username/repository ``` @@ -629,20 +624,20 @@ gh repo clone username/repository `cd ProjectURL` 你也可以使用以下方式打開整個專案: -- **[GitHub Codespaces](https://github.com/features/codespaces)** - GitHub 的雲端開發環境,直接在瀏覽器中使用 VS Code -- **[GitHub Desktop](https://desktop.github.com/)** - 一個用於 Git 操作的圖形介面應用程式 -- **[GitHub.dev](https://github.dev)** - 在任何 GitHub 倉庫中按下 `.` 鍵即可在瀏覽器中打開 VS Code +- **[GitHub Codespaces](https://github.com/features/codespaces)** - GitHub 的雲端開發環境,瀏覽器中的 VS Code +- **[GitHub Desktop](https://desktop.github.com/)** - 用於 Git 操作的圖形介面應用程式 +- **[GitHub.dev](https://github.dev)** - 在任何 GitHub 儲存庫中按下 `.` 鍵即可在瀏覽器中打開 VS Code - **VS Code** 搭配 GitHub Pull Requests 擴展 -最後,你也可以下載壓縮的程式碼資料夾。 +最後,你也可以下載壓縮的資料夾。 ### 關於 GitHub 的一些有趣事實 -你可以在 GitHub 上對任何公共倉庫進行加星、關注和/或 "分叉"。你可以在右上角的下拉選單中找到你加星的倉庫。這就像程式碼的書籤。 +你可以在 GitHub 上對任何公共儲存庫進行加星、關注和/或 "fork"。你可以在右上角的下拉選單中找到你加星的儲存庫。這就像書籤,但是針對程式碼。 專案通常有一個問題追蹤器,大多數情況下在 GitHub 的 "Issues" 標籤中,除非另有說明,人們在這裡討論與專案相關的問題。而 Pull Requests 標籤則是人們討論和審核正在進行的更改的地方。 -專案可能還有論壇、郵件列表或像 Slack、Discord 或 IRC 這樣的聊天頻道進行討論。 +專案可能還會在論壇、郵件列表或像 Slack、Discord 或 IRC 這樣的聊天頻道中進行討論。 🔧 **現代 GitHub 功能**: - **GitHub Discussions** - 內建的社群對話論壇 @@ -652,88 +647,88 @@ gh repo clone username/repository - **Insights 標籤** - 關於貢獻者、提交和專案健康狀況的分析 - **Projects 標籤** - GitHub 的內建專案管理工具 -✅ 瀏覽你的新 GitHub 倉庫並嘗試一些功能,例如編輯設定、向倉庫添加資訊、創建專案(例如看板),以及設置 GitHub Actions 進行自動化。你可以做的事情還有很多! +✅ 瀏覽你的新 GitHub 儲存庫並嘗試一些操作,例如編輯設定、向儲存庫添加資訊、創建專案(例如看板),以及設置 GitHub Actions 進行自動化。你可以做的事情非常多! --- ## 🚀 挑戰 -好了,現在是時候測試你剛剛學到的 GitHub 超能力了!🚀 這是一個能讓你感到非常滿足的挑戰: +好了,現在是時候測試你的 GitHub 超能力了!🚀 這是一個挑戰,會讓你在最滿足的方式中理解所有內容: -找一位朋友(或者那個總是問你在搞什麼 "電腦東西" 的家人)一起展開一場合作編程冒險吧!這就是真正的魔力所在——創建一個專案,讓他們分叉,創建一些分支,並像專業人士一樣合併更改。 +找一位朋友(或者那位總是問你在搞什麼 "電腦東西" 的家人)一起展開一場合作編程冒險!這就是真正的魔法所在——創建一個專案,讓他們 fork 它,創建一些分支,並像專業人士一樣合併更改。 -我不會騙你——你們可能會在某些時候笑出聲(尤其是當你們都試圖更改同一行時),可能會感到困惑,但你們一定會有那些令人驚嘆的 "原來如此!" 的時刻,讓所有的學習都變得值得。此外,與他人分享第一次成功合併的喜悅是非常特別的——這就像在慶祝你們的進步! +我不會騙你——你可能會在某些時候笑出來(尤其是當你們都試圖更改同一行時),可能會抓抓頭感到困惑,但你一定會有那些令人驚嘆的 "原來如此!" 的時刻,讓所有的學習都值得。更棒的是,與他人分享第一次成功合併的那一刻是非常特別的——這就像在慶祝你走了多遠! -還沒有找到編程夥伴?完全沒問題!GitHub 社群充滿了非常友好的夥伴,他們記得自己剛開始時的感受。尋找標有 "good first issue" 的倉庫——它們基本上是在說 "嘿,初學者,來和我們一起學習吧!" 是不是很棒? +還沒有編程夥伴?完全沒問題!GitHub 社群充滿了非常友好的成員,他們記得自己曾經是新手。尋找標有 "good first issue" 的儲存庫——它們基本上是在說 "嘿,初學者,來和我們一起學習吧!" 這是不是很棒? ## 課後測驗 [課後測驗](https://ff-quizzes.netlify.app/web/en/) ## 回顧與持續學習 -哇!🎉 看看你——你剛剛像個真正的高手一樣征服了 GitHub 的基礎知識!如果你現在覺得腦袋有點滿,那是完全正常的,事實上這是一個好現象。你剛剛學到了一些我剛開始時花了好幾週才熟悉的工具。 +哇!🎉 看看你——你剛剛像一位絕對的冠軍一樣征服了 GitHub 的基礎知識!如果你現在覺得腦袋有點滿,那是完全正常的,老實說這是一個好現象。你剛剛學習了我剛開始時花了幾周才感到熟悉的工具。 -Git 和 GitHub 是非常強大的工具(真的非常強大),我認識的每一位開發者——包括那些現在看起來像巫師一樣的人——都需要練習並在其中摸索一段時間才能完全掌握。你能完成這堂課,意味著你已經在掌握開發者工具箱中最重要的工具的路上了。 +Git 和 GitHub 是非常強大的工具(真的非常強大),我認識的每一位開發者——包括那些現在看起來像巫師的人——都需要練習並在其中摸索一段時間,直到一切都變得清晰。你能完成這堂課,意味著你已經在掌握開發者工具箱中最重要的工具之一的路上了。 以下是一些非常棒的資源,幫助你練習並變得更厲害: -- [貢獻開源軟體指南](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) – 你的影響力路線圖 +- [貢獻開源軟件指南](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) – 你的改變世界的路線圖 - [Git 速查表](https://training.github.com/downloads/github-git-cheat-sheet/) – 快速參考的好幫手! -記住:熟能生巧,而不是完美!你使用 Git 和 GitHub 的次數越多,就會越自然。GitHub 創建了一些很棒的互動課程,讓你可以在安全的環境中練習: +記住:練習帶來進步,而不是完美!你使用 Git 和 GitHub 的次數越多,它就會變得越自然。GitHub 創建了一些很棒的互動課程,讓你在安全的環境中練習: - [GitHub 入門](https://github.com/skills/introduction-to-github) - [使用 Markdown 進行溝通](https://github.com/skills/communicate-using-markdown) - [GitHub Pages](https://github.com/skills/github-pages) - [管理合併衝突](https://github.com/skills/resolve-merge-conflicts) -**想要挑戰自己?試試這些現代工具:** +**想要冒險?試試這些現代工具:** - [GitHub CLI 文件](https://cli.github.com/manual/) – 讓你感覺像命令列巫師 - [GitHub Codespaces 文件](https://docs.github.com/en/codespaces) – 在雲端編程! - [GitHub Actions 文件](https://docs.github.com/en/actions) – 自動化所有事情 -- [Git 最佳實踐](https://www.atlassian.com/git/tutorials/comparing-workflows) – 提升你的工作流程 +- [Git 最佳實踐](https://www.atlassian.com/git/tutorials/comparing-workflows) – 提升你的工作流程技能 ## GitHub Copilot Agent 挑戰 🚀 使用 Agent 模式完成以下挑戰: -**描述:** 創建一個協作的網頁開發專案,展示你在本課中學到的完整 GitHub 工作流程。這個挑戰將幫助你在真實世界的場景中練習倉庫創建、協作功能和現代 Git 工作流程。 +**描述:** 創建一個協作的網頁開發專案,展示你在本課中學到的完整 GitHub 工作流程。這個挑戰將幫助你在真實場景中練習儲存庫創建、協作功能以及現代 Git 工作流程。 -**提示:** 創建一個新的公共 GitHub 倉庫,用於一個簡單的 "網頁開發資源" 專案。倉庫應包含一個結構良好的 README.md 文件,列出有用的網頁開發工具和資源,按類別(HTML、CSS、JavaScript 等)組織。設置倉庫的社群標準,包括許可證、貢獻指南和行為準則。創建至少兩個功能分支:一個用於添加 CSS 資源,另一個用於添加 JavaScript 資源。對每個分支進行描述性提交,然後創建 pull request 將更改合併回主分支。啟用 GitHub 功能,如 Issues、Discussions,並設置基本的 GitHub Actions 工作流程進行自動檢查。 +**提示:** 創建一個新的公共 GitHub 儲存庫,用於一個簡單的 "網頁開發資源" 專案。儲存庫應包含一個結構良好的 README.md 文件,列出有用的網頁開發工具和資源,按類別(HTML、CSS、JavaScript 等)組織。設置儲存庫,包含適當的社群標準,例如許可證、貢獻指南和行為準則。創建至少兩個功能分支:一個用於添加 CSS 資源,另一個用於 JavaScript 資源。向每個分支提交描述性提交訊息,然後創建 pull request 將更改合併回 main。啟用 GitHub 功能,例如 Issues、Discussions,並設置基本的 GitHub Actions 工作流程進行自動檢查。 ## 作業 -你的任務,如果你選擇接受:完成 [GitHub 入門](https://github.com/skills/introduction-to-github) 課程。這個互動課程將讓你在安全、引導的環境中練習你學到的一切。此外,完成後你還會獲得一個酷炫的徽章!🏅 +你的任務,如果你選擇接受:完成 [GitHub 入門](https://github.com/skills/introduction-to-github) 課程。這個互動課程將讓你在安全、引導的環境中練習你所學到的一切。此外,完成後你還會獲得一個酷炫的徽章!🏅 **準備好迎接更多挑戰?** -- 為你的 GitHub 帳戶設置 SSH 驗證(再也不用輸入密碼!) +- 為你的 GitHub 帳戶設置 SSH 驗證(再也不用密碼了!) - 嘗試使用 GitHub CLI 進行日常 Git 操作 -- 創建一個帶有 GitHub Actions 工作流程的倉庫 -- 探索 GitHub Codespaces,直接在雲端編輯這個倉庫 +- 創建一個包含 GitHub Actions 工作流程的儲存庫 +- 探索 GitHub Codespaces,打開這個儲存庫進行雲端編輯 --- ## 🚀 你的 GitHub 精通時間表 -### ⚡ **接下來 5 分鐘內可以做的事** -- [ ] 為這個倉庫和其他 3 個你感興趣的專案加星 +### ⚡ **接下來 5 分鐘內可以做的事情** +- [ ] 為這個儲存庫和其他 3 個你感興趣的專案加星 - [ ] 為你的 GitHub 帳戶設置雙重身份驗證 -- [ ] 為你的第一個倉庫創建一個簡單的 README +- [ ] 為你的第一個儲存庫創建一個簡單的 README - [ ] 關注 5 位讓你感到啟發的開發者 -### 🎯 **這一小時內可以完成的事** +### 🎯 **這一小時內可以完成的事情** - [ ] 完成課後測驗並反思你的 GitHub 旅程 - [ ] 設置 SSH 密鑰以進行無密碼的 GitHub 驗證 -- [ ] 創建你的第一個有意義的提交,並撰寫一個出色的提交訊息 +- [ ] 創建你的第一個有意義的提交,並附上出色的提交訊息 - [ ] 探索 GitHub 的 "Explore" 標籤,發現熱門專案 -- [ ] 練習分叉倉庫並進行小改動 +- [ ] 練習 fork 一個儲存庫並進行小更改 -### 📅 **你的 GitHub 一週冒險** +### 📅 **你的 GitHub 一周冒險** - [ ] 完成 GitHub Skills 課程(GitHub 入門、Markdown) - [ ] 向開源專案提交你的第一個 pull request - [ ] 設置 GitHub Pages 網站展示你的作品 - [ ] 加入你感興趣的專案的 GitHub Discussions -- [ ] 創建一個具有完整社群標準的倉庫(README、許可證等) +- [ ] 創建一個包含適當社群標準(README、許可證等)的儲存庫 - [ ] 嘗試使用 GitHub Codespaces 進行雲端開發 ### 🌟 **你的 GitHub 一個月轉型** @@ -742,38 +737,39 @@ Git 和 GitHub 是非常強大的工具(真的非常強大),我認識的 - [ ] 使用 GitHub Actions 設置自動化工作流程 - [ ] 建立一個展示你 GitHub 貢獻的作品集 - [ ] 參加 Hacktoberfest 或類似的社群活動 -- [ ] 成為你自己專案的維護者,讓其他人來貢獻 +- [ ] 成為你自己專案的維護者,讓其他人貢獻 ### 🎓 **最終 GitHub 精通檢查** -**慶祝你的進步:** -- 你最喜歡使用 GitHub 的哪一部分? -- 哪個協作功能讓你最興奮? +**慶祝你走了多遠:** +- 使用 GitHub 時你最喜歡的事情是什麼? +- 哪個協作功能最讓你興奮? - 你現在對貢獻開源的信心如何? - 你想要貢獻的第一個專案是什麼? ```mermaid journey - title Your GitHub Confidence Journey - section Today - Nervous: 3: You - Curious: 4: You - Excited: 5: You - section This Week - Practicing: 4: You - Contributing: 5: You - Connecting: 5: You - section Next Month - Collaborating: 5: You - Leading: 5: You - Inspiring Others: 5: You + title 您的 GitHub 信心之旅 + section 今天 + 緊張: 3: 您 + 好奇: 4: 您 + 興奮: 5: 您 + section 本週 + 練習: 4: 您 + 貢獻: 5: 您 + 聯繫: 5: 您 + section 下個月 + 合作: 5: 您 + 領導: 5: 您 + 激勵他人: 5: 您 ``` +> 🌍 **歡迎加入全球開發者社群!** 你現在擁有了與全球數百萬開發者合作的工具。你的第一次貢獻可能看起來很小,但請記住——每個主要的開源專案都始於某人第一次提交。問題不是你是否會產生影響,而是哪些令人驚嘆的專案會因你的獨特視角而受益!🚀 -> 🌍 **歡迎加入全球開發者社群!** 你現在擁有了與全球數百萬開發者合作的工具。你的第一次貢獻可能看起來微不足道,但請記住——每個主要的開源專案都始於某人第一次提交。問題不是你是否會產生影響,而是哪些令人驚嘆的專案會首先受益於你的獨特視角!🚀 - -記住:每個專家都曾是初學者。你一定可以做到!💪 +記住:每位專家都曾是初學者。你一定可以做到!💪 --- + **免責聲明**: -本文件已使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。儘管我們致力於提供準確的翻譯,請注意自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應被視為權威來源。對於關鍵信息,建議使用專業人工翻譯。我們對因使用此翻譯而引起的任何誤解或誤釋不承擔責任。 \ No newline at end of file +此文件已使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。我們致力於提供準確的翻譯,但請注意,自動翻譯可能包含錯誤或不準確之處。應以原文文件作為權威來源。對於關鍵資訊,建議尋求專業人工翻譯。我們對因使用此翻譯而引起的任何誤解或誤釋不承擔責任。 + \ No newline at end of file diff --git a/translations/mo/README.md b/translations/mo/README.md index d05d8751..aeb5711a 100644 --- a/translations/mo/README.md +++ b/translations/mo/README.md @@ -1,203 +1,201 @@ -[![GitHub license](https://img.shields.io/github/license/microsoft/Web-Dev-For-Beginners.svg)](https://github.com/microsoft/Web-Dev-For-Beginners/blob/master/LICENSE) -[![GitHub contributors](https://img.shields.io/github/contributors/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/graphs/contributors/) -[![GitHub issues](https://img.shields.io/github/issues/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/issues/) -[![GitHub pull-requests](https://img.shields.io/github/issues-pr/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/pulls/) -[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) +[![GitHub license](https://img.shields.io/github/license/microsoft/Web-Dev-For-Beginners.svg)](https://github.com/microsoft/Web-Dev-For-Beginners/blob/master/LICENSE) +[![GitHub contributors](https://img.shields.io/github/contributors/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/graphs/contributors/) +[![GitHub issues](https://img.shields.io/github/issues/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/issues/) +[![GitHub pull-requests](https://img.shields.io/github/issues-pr/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/pulls/) +[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) -[![GitHub watchers](https://img.shields.io/github/watchers/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Watch&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/watchers/) -[![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Fork&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/network/) -[![GitHub stars](https://img.shields.io/github/stars/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Star&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/stargazers/) +[![GitHub watchers](https://img.shields.io/github/watchers/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Watch&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/watchers/) +[![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Fork&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/network/) +[![GitHub stars](https://img.shields.io/github/stars/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Star&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/stargazers/) -[![](https://dcbadge.vercel.app/api/server/ByRwuEEgH4)](https://discord.gg/zxKYvhSnVp?WT.mc_id=academic-000002-leestott) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) -# 初學者的網頁開發課程 - 教學大綱 +# 初學者網頁開發課程 - 一個完整的課程 -透過微軟雲端倡導者提供的12週完整課程,學習網頁開發的基礎知識。24堂課程涵蓋JavaScript、CSS和HTML,並透過實作專案如生態瓶、瀏覽器擴充功能及太空遊戲來學習。課程包含測驗、討論及實際作業,幫助您提升技能並加強知識的記憶。立即開始您的程式設計之旅吧! +透過 Microsoft Cloud Advocates 提供的 12 週完整課程,學習網頁開發的基礎知識。24 節課程涵蓋 JavaScript、CSS 和 HTML,並透過實作專案如玻璃花園、瀏覽器擴展和太空遊戲來學習。參與測驗、討論和實際作業,提升技能並加強知識記憶。立即開始你的程式設計旅程吧! -加入Azure AI Foundry Discord社群 +加入 Azure AI Foundry Discord 社群 -[![Microsoft Azure AI Foundry Discord](https://dcbadge.limes.pink/api/server/ByRwuEEgH4)](https://discord.com/invite/ByRwuEEgH4) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) -按照以下步驟開始使用這些資源: -1. **Fork此儲存庫**:點擊[![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/fork) -2. **Clone此儲存庫**:`git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` -3. [**加入Azure AI Foundry Discord,與專家及其他開發者交流**](https://discord.com/invite/ByRwuEEgH4) +按照以下步驟開始使用這些資源: +1. **Fork 此儲存庫**:點擊 [![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/fork) +2. **Clone 此儲存庫**:`git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` +3. [**加入 Azure AI Foundry Discord,與專家和其他開發者交流**](https://discord.com/invite/ByRwuEEgH4) -### 🌐 多語言支援 +### 🌐 多語言支援 -#### 透過GitHub Action支援(自動化且始終保持最新) +#### 透過 GitHub Action 支援(自動化且隨時更新) - -[阿拉伯語](../ar/README.md) | [孟加拉語](../bn/README.md) | [保加利亞語](../bg/README.md) | [緬甸語](../my/README.md) | [中文(簡體)](../zh/README.md) | [中文(繁體,香港)](../hk/README.md) | [中文(繁體,澳門)](./README.md) | [中文(繁體,台灣)](../tw/README.md) | [克羅埃西亞語](../hr/README.md) | [捷克語](../cs/README.md) | [丹麥語](../da/README.md) | [荷蘭語](../nl/README.md) | [愛沙尼亞語](../et/README.md) | [芬蘭語](../fi/README.md) | [法語](../fr/README.md) | [德語](../de/README.md) | [希臘語](../el/README.md) | [希伯來語](../he/README.md) | [印地語](../hi/README.md) | [匈牙利語](../hu/README.md) | [印尼語](../id/README.md) | [義大利語](../it/README.md) | [日語](../ja/README.md) | [韓語](../ko/README.md) | [立陶宛語](../lt/README.md) | [馬來語](../ms/README.md) | [馬拉地語](../mr/README.md) | [尼泊爾語](../ne/README.md) | [挪威語](../no/README.md) | [波斯語](../fa/README.md) | [波蘭語](../pl/README.md) | [葡萄牙語(巴西)](../br/README.md) | [葡萄牙語(葡萄牙)](../pt/README.md) | [旁遮普語](../pa/README.md) | [羅馬尼亞語](../ro/README.md) | [俄語](../ru/README.md) | [塞爾維亞語(西里爾字母)](../sr/README.md) | [斯洛伐克語](../sk/README.md) | [斯洛文尼亞語](../sl/README.md) | [西班牙語](../es/README.md) | [斯瓦希里語](../sw/README.md) | [瑞典語](../sv/README.md) | [他加祿語(菲律賓)](../tl/README.md) | [泰米爾語](../ta/README.md) | [泰語](../th/README.md) | [土耳其語](../tr/README.md) | [烏克蘭語](../uk/README.md) | [烏爾都語](../ur/README.md) | [越南語](../vi/README.md) - +[Arabic](../ar/README.md) | [Bengali](../bn/README.md) | [Bulgarian](../bg/README.md) | [Burmese (Myanmar)](../my/README.md) | [Chinese (Simplified)](../zh/README.md) | [Chinese (Traditional, Hong Kong)](../hk/README.md) | [Chinese (Traditional, Macau)](./README.md) | [Chinese (Traditional, Taiwan)](../tw/README.md) | [Croatian](../hr/README.md) | [Czech](../cs/README.md) | [Danish](../da/README.md) | [Dutch](../nl/README.md) | [Estonian](../et/README.md) | [Finnish](../fi/README.md) | [French](../fr/README.md) | [German](../de/README.md) | [Greek](../el/README.md) | [Hebrew](../he/README.md) | [Hindi](../hi/README.md) | [Hungarian](../hu/README.md) | [Indonesian](../id/README.md) | [Italian](../it/README.md) | [Japanese](../ja/README.md) | [Korean](../ko/README.md) | [Lithuanian](../lt/README.md) | [Malay](../ms/README.md) | [Marathi](../mr/README.md) | [Nepali](../ne/README.md) | [Norwegian](../no/README.md) | [Persian (Farsi)](../fa/README.md) | [Polish](../pl/README.md) | [Portuguese (Brazil)](../br/README.md) | [Portuguese (Portugal)](../pt/README.md) | [Punjabi (Gurmukhi)](../pa/README.md) | [Romanian](../ro/README.md) | [Russian](../ru/README.md) | [Serbian (Cyrillic)](../sr/README.md) | [Slovak](../sk/README.md) | [Slovenian](../sl/README.md) | [Spanish](../es/README.md) | [Swahili](../sw/README.md) | [Swedish](../sv/README.md) | [Tagalog (Filipino)](../tl/README.md) | [Tamil](../ta/README.md) | [Thai](../th/README.md) | [Turkish](../tr/README.md) | [Ukrainian](../uk/README.md) | [Urdu](../ur/README.md) | [Vietnamese](../vi/README.md) -**如果您希望支援其他翻譯語言,請參考[此處](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)** +**如果你希望支援更多語言,請參考 [這裡](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)** -[![在Visual Studio Code中開啟](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners) +[![Open in Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners) -#### 🧑‍🎓 _您是學生嗎?_ +#### 🧑‍🎓 _你是學生嗎?_ -造訪[**學生中心頁面**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon),您可以找到初學者資源、學生套件,甚至有機會獲得免費證書兌換券。這是您想要收藏並定期查看的頁面,因為我們每月都會更新內容。 +造訪 [**學生中心頁面**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon),你可以找到初學者資源、學生套件,甚至有機會獲得免費證書兌換券。這是你應該收藏並定期查看的頁面,因為我們每月都會更新內容。 -### 📣 公告 - 新的GitHub Copilot Agent模式挑戰等您完成! +### 📣 公告 - 新的 GitHub Copilot Agent 模式挑戰等你完成! -新增挑戰,請在大多數章節中尋找"GitHub Copilot Agent Challenge 🚀"。這是一個使用GitHub Copilot和Agent模式完成的新挑戰。如果您之前未使用過Agent模式,它不僅能生成文字,還能創建和編輯檔案、執行指令等。 +新增挑戰,請在大多數章節中尋找 "GitHub Copilot Agent Challenge 🚀"。這是一個使用 GitHub Copilot 和 Agent 模式完成的新挑戰。如果你還沒使用過 Agent 模式,它不僅能生成文字,還能創建和編輯檔案、執行指令等。 -### 📣 公告 - _使用生成式AI的新專案_ +### 📣 公告 - _使用生成式 AI 建立新專案_ -剛新增AI助手專案,請查看[專案](./09-chat-project/README.md) +新增 AI 助理專案,查看 [專案](./09-chat-project/README.md) -### 📣 公告 - _新的生成式AI JavaScript課程已發布_ +### 📣 公告 - _新的生成式 AI 課程_ -不要錯過我們的生成式AI新課程! +我們剛剛發布了新的 JavaScript 生成式 AI 課程! -造訪[https://aka.ms/genai-js-course](https://aka.ms/genai-js-course)開始學習! +造訪 [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) 開始學習! -![背景](../../translated_images/background.148a8d43afde57303419a663f50daf586681bc2fabf833f66ef6954073983c66.mo.png) +![Background](../../translated_images/background.148a8d43afde57303419a663f50daf586681bc2fabf833f66ef6954073983c66.mo.png) -- 課程涵蓋從基礎到RAG的所有內容。 -- 使用生成式AI和我們的伴侶應用程式與歷史人物互動。 -- 有趣且引人入勝的敘事,您將進行時光旅行! +- 課程涵蓋從基礎到 RAG 的所有內容。 +- 使用 GenAI 和我們的伴侶應用程式與歷史人物互動。 +- 有趣且引人入勝的敘事,你將進行時光旅行! -![角色](../../translated_images/character.5c0dd8e067ffd693c16e2c5b7412ab075a2215ce31f998305639fa3a05e14fbe.mo.png) +![character](../../translated_images/character.5c0dd8e067ffd693c16e2c5b7412ab075a2215ce31f998305639fa3a05e14fbe.mo.png) -每堂課都包含一個作業、一個知識檢查及一個挑戰,幫助您學習以下主題: -- 提示及提示工程 -- 文字及圖片應用程式生成 -- 搜尋應用程式 +每節課都包含一個作業、一個知識檢查和一個挑戰,幫助你學習以下主題: +- 提示和提示工程 +- 文字和圖片應用程式生成 +- 搜索應用程式 -造訪[https://aka.ms/genai-js-course](../../[https:/aka.ms/genai-js-course)開始學習! +造訪 [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) 開始學習! -## 🌱 開始使用 +## 🌱 開始學習 -> **教師們**,我們[提供了一些建議](for-teachers.md)供您使用此教學大綱。我們期待您在[討論論壇](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)中提供回饋! +> **教師們**,我們已經 [提供了一些建議](for-teachers.md) 關於如何使用這份課程。我們非常期待你在 [討論論壇](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner) 中的反饋! -**[學習者](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**,每堂課從課前測驗開始,接著閱讀課程內容,完成各種活動,並透過課後測驗檢查您的理解。 +**[學習者](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**,每節課從課前測驗開始,接著閱讀課程內容,完成各種活動,並透過課後測驗檢查你的理解。 -為了提升學習體驗,與同儕一起合作完成專案吧!我們鼓勵您在[討論論壇](https://github.com/microsoft/Web-Dev-For-Beginners/discussions)中進行討論,我們的版主團隊將隨時回答您的問題。 +為了提升學習體驗,與同儕一起合作完成專案吧!我們鼓勵在 [討論論壇](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) 中進行討論,我們的版主團隊將隨時回答你的問題。 -為了進一步提升您的教育,我們強烈建議探索[Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon)以獲取更多學習材料。 +為了進一步學習,我們強烈建議探索 [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) 以獲取更多學習資源。 -### 📋 設置您的環境 +### 📋 設置你的環境 -此教學大綱已準備好開發環境!開始時,您可以選擇在[Codespace](https://github.com/features/codespaces/)(_基於瀏覽器,無需安裝的環境_)中運行教學大綱,或在您的電腦上使用文字編輯器如[Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon)進行本地運行。 +這份課程已經準備好開發環境!開始時,你可以選擇在 [Codespace](https://github.com/features/codespaces/)(_基於瀏覽器,無需安裝的環境_)中運行課程,或者在你的電腦上使用如 [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) 的文字編輯器。 -#### 創建您的儲存庫 -為了方便保存您的工作,建議您創建此儲存庫的副本。您可以點擊頁面頂部的**使用此模板**按鈕,這將在您的GitHub帳戶中創建一個包含教學大綱副本的新儲存庫。 +#### 建立你的儲存庫 +為了方便保存你的學習進度,建議你建立這份儲存庫的副本。你可以點擊頁面頂部的 **Use this template** 按鈕,這將在你的 GitHub 帳戶中建立一個包含課程副本的新儲存庫。 -按照以下步驟: -1. **Fork此儲存庫**:點擊頁面右上角的"Fork"按鈕。 -2. **Clone此儲存庫**:`git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` +按照以下步驟: +1. **Fork 此儲存庫**:點擊頁面右上角的 "Fork" 按鈕。 +2. **Clone 此儲存庫**:`git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` -#### 在Codespace中運行教學大綱 +#### 在 Codespace 中運行課程 -在您創建的此儲存庫副本中,點擊**Code**按鈕並選擇**Open with Codespaces**。這將為您創建一個新的Codespace以供使用。 +在你建立的儲存庫副本中,點擊 **Code** 按鈕並選擇 **Open with Codespaces**。這將為你創建一個新的 Codespace 以供學習使用。 -![Codespace](../../translated_images/createcodespace.0238bbf4d7a8d955fa8fa7f7b6602a3cb6499a24708fbee589f83211c5a613b7.mo.png) +![Codespace](../../translated_images/createcodespace.0238bbf4d7a8d955fa8fa7f7b6602a3cb6499a24708fbee589f83211c5a613b7.mo.png) -#### 在您的電腦上本地運行教學大綱 +#### 在本地電腦上運行課程 -要在您的電腦上本地運行此教學大綱,您需要一個文字編輯器、一個瀏覽器和一個命令行工具。我們的第一堂課,[程式語言與工具介紹](../../1-getting-started-lessons/1-intro-to-programming-languages),將引導您了解各種工具選項,幫助您選擇最適合您的工具。 +要在本地電腦上運行課程,你需要一個文字編輯器、一個瀏覽器和一個命令行工具。我們的第一節課 [程式語言與工具介紹](../../1-getting-started-lessons/1-intro-to-programming-languages) 將引導你了解各種工具選項,幫助你選擇最適合你的工具。 -我們建議使用[Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon)作為您的編輯器,它還內建了[終端機](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon)。您可以在[此處](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon)下載Visual Studio Code。 +我們推薦使用 [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) 作為編輯器,它還內建 [終端機](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon)。你可以在 [這裡](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) 下載 Visual Studio Code。 -1. 將您的儲存庫克隆到您的電腦。您可以點擊**Code**按鈕並複製URL: +1. 將你的儲存庫克隆到電腦上。你可以點擊 **Code** 按鈕並複製 URL: - [CodeSpace](./images/createcodespace.png) + [CodeSpace](./images/createcodespace.png) - 然後,在[Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon)內的[終端機](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon)中運行以下指令,將``替換為您剛複製的URL: + 然後,在 [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) 的 [終端機](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) 中運行以下指令,將 `` 替換為你剛剛複製的 URL: ```bash git clone ``` + +2. 在 Visual Studio Code 中打開資料夾。你可以點擊 **File** > **Open Folder**,然後選擇你剛剛克隆的資料夾。 -2. 在Visual Studio Code中開啟資料夾。您可以點擊**檔案** > **開啟資料夾**,然後選擇您剛克隆的資料夾。 +> 推薦的 Visual Studio Code 擴展: +> +> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - 在 Visual Studio Code 中預覽 HTML 頁面 +> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - 幫助你更快撰寫程式碼 -> 推薦的Visual Studio Code擴充功能: -> -> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - 在 Visual Studio Code 中預覽 HTML 頁面 -> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - 幫助您更快速地撰寫程式碼 +## 📂 每堂課包括: -## 📂 每堂課包含: - -- 選擇性手繪筆記 -- 選擇性補充影片 -- 課前暖身測驗 +- 可選的手繪筆記 +- 可選的補充影片 +- 課前熱身測驗 - 書面課程 -- 專案型課程的逐步指南,教您如何完成專案 -- 知識檢測 +- 對於專案型課程,提供逐步指導如何完成專案 +- 知識檢查 - 挑戰 - 補充閱讀 - 作業 - [課後測驗](https://ff-quizzes.netlify.app/web/) -> **關於測驗的說明**:所有測驗都包含在 Quiz-app 資料夾中,共有 48 個測驗,每個測驗包含三個問題。測驗可在 [此處](https://ff-quizzes.netlify.app/web/) 找到,測驗應用程式可以在本地執行或部署到 Azure;請按照 `quiz-app` 資料夾中的指示操作。 +> **關於測驗的說明**:所有測驗都包含在 Quiz-app 資料夾中,共有 48 個測驗,每個測驗包含三個問題。你可以在 [這裡](https://ff-quizzes.netlify.app/web/) 找到測驗應用程式,該應用程式可以在本地運行或部署到 Azure;請按照 `quiz-app` 資料夾中的指示操作。 ## 🗃️ 課程 -| | 專案名稱 | 教授概念 | 學習目標 | 連結課程 | 作者 | -| :-: | :------------------------------------------------------: | :--------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------: | :---------------------: | -| 01 | 入門 | 程式設計入門及工具介紹 | 學習大多數程式語言的基本原理以及幫助專業開發者完成工作的軟體 | [程式語言入門及工具介紹](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine | -| 02 | 入門 | GitHub 基礎,包含團隊合作 | 學習如何在專案中使用 GitHub,如何與他人合作管理程式碼 | [GitHub 入門](./1-getting-started-lessons/2-github-basics/README.md) | Floor | -| 03 | 入門 | 無障礙設計 | 學習網頁無障礙設計的基礎 | [無障礙設計基礎](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | -| 04 | JS 基礎 | JavaScript 資料型別 | JavaScript 資料型別的基礎 | [資料型別](./2-js-basics/1-data-types/README.md) | Jasmine | -| 05 | JS 基礎 | 函數與方法 | 學習如何使用函數與方法來管理應用程式的邏輯流程 | [函數與方法](./2-js-basics/2-functions-methods/README.md) | Jasmine 和 Christopher | -| 06 | JS 基礎 | 使用 JS 做出決策 | 學習如何使用決策方法在程式碼中創建條件 | [做出決策](./2-js-basics/3-making-decisions/README.md) | Jasmine | -| 07 | JS 基礎 | 陣列與迴圈 | 使用 JavaScript 中的陣列與迴圈來處理資料 | [陣列與迴圈](./2-js-basics/4-arrays-loops/README.md) | Jasmine | -| 08 | [生態瓶](./3-terrarium/solution/README.md) | HTML 實作 | 建立 HTML 來創建線上生態瓶,專注於建立版面配置 | [HTML 入門](./3-terrarium/1-intro-to-html/README.md) | Jen | -| 09 | [生態瓶](./3-terrarium/solution/README.md) | CSS 實作 | 建立 CSS 來設計線上生態瓶,專注於 CSS 基礎,包括使頁面響應式 | [CSS 入門](./3-terrarium/2-intro-to-css/README.md) | Jen | -| 10 | [生態瓶](./3-terrarium/solution/README.md) | JavaScript 閉包與 DOM 操作 | 建立 JavaScript 使生態瓶具備拖放介面功能,專注於閉包與 DOM 操作 | [JavaScript 閉包與 DOM 操作](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | -| 11 | [打字遊戲](./4-typing-game/solution/README.md) | 建立打字遊戲 | 學習如何使用鍵盤事件來驅動 JavaScript 應用程式的邏輯 | [事件驅動程式設計](./4-typing-game/typing-game/README.md) | Christopher | -| 12 | [綠色瀏覽器擴充功能](./5-browser-extension/solution/README.md) | 瀏覽器操作 | 學習瀏覽器的運作方式、歷史,以及如何搭建瀏覽器擴充功能的初始架構 | [關於瀏覽器](./5-browser-extension/1-about-browsers/README.md) | Jen | -| 13 | [綠色瀏覽器擴充功能](./5-browser-extension/solution/README.md) | 建立表單、呼叫 API 並將變數儲存於本地存儲 | 建立瀏覽器擴充功能的 JavaScript 元件,使用儲存在本地存儲的變數呼叫 API | [API、表單與本地存儲](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | -| 14 | [綠色瀏覽器擴充功能](./5-browser-extension/solution/README.md) | 瀏覽器背景處理與網頁效能 | 使用瀏覽器的背景處理來管理擴充功能的圖示;學習網頁效能及一些優化方法 | [背景任務與效能](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | -| 15 | [太空遊戲](./6-space-game/solution/README.md) | 更進階的 JavaScript 遊戲開發 | 學習使用類別與組合的繼承以及 Pub/Sub 模式,為開發遊戲做準備 | [進階遊戲開發入門](./6-space-game/1-introduction/README.md) | Chris | -| 16 | [太空遊戲](./6-space-game/solution/README.md) | 繪製到畫布 | 學習 Canvas API,用於將元素繪製到螢幕 | [繪製到畫布](./6-space-game/2-drawing-to-canvas/README.md) | Chris | -| 17 | [太空遊戲](./6-space-game/solution/README.md) | 在螢幕上移動元素 | 探索如何使用笛卡爾座標和 Canvas API 使元素移動 | [移動元素](./6-space-game/3-moving-elements-around/README.md) | Chris | -| 18 | [太空遊戲](./6-space-game/solution/README.md) | 碰撞檢測 | 使用按鍵使元素碰撞並相互作用,並提供冷卻功能以確保遊戲效能 | [碰撞檢測](./6-space-game/4-collision-detection/README.md) | Chris | +| | 專案名稱 | 教授概念 | 學習目標 | 相關課程連結 | 作者 | +| :-: | :--------------------------------------------------: | :------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------: | :-------------------: | +| 01 | 入門篇 | 程式設計簡介及工具介紹 | 學習大多數程式語言的基本原理,以及幫助專業開發者完成工作的軟件工具 | [程式語言與工具介紹](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine | +| 02 | 入門篇 | GitHub 基礎,包含團隊合作 | 學習如何在專案中使用 GitHub,如何與他人協作管理程式碼 | [GitHub 基礎介紹](./1-getting-started-lessons/2-github-basics/README.md) | Floor | +| 03 | 入門篇 | 無障礙設計 | 學習網頁無障礙設計的基本知識 | [無障礙設計基礎](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | +| 04 | JS 基礎 | JavaScript 資料類型 | JavaScript 資料類型的基礎知識 | [資料類型](./2-js-basics/1-data-types/README.md) | Jasmine | +| 05 | JS 基礎 | 函數與方法 | 學習函數與方法,管理應用程式的邏輯流程 | [函數與方法](./2-js-basics/2-functions-methods/README.md) | Jasmine 和 Christopher | +| 06 | JS 基礎 | 使用 JS 做決策 | 學習如何使用決策方法在程式碼中創建條件 | [做決策](./2-js-basics/3-making-decisions/README.md) | Jasmine | +| 07 | JS 基礎 | 陣列與迴圈 | 使用 JavaScript 中的陣列與迴圈處理資料 | [陣列與迴圈](./2-js-basics/4-arrays-loops/README.md) | Jasmine | +| 08 | [生態瓶](./3-terrarium/solution/README.md) | HTML 實踐 | 建立 HTML 來創建一個線上生態瓶,專注於佈局設計 | [HTML 簡介](./3-terrarium/1-intro-to-html/README.md) | Jen | +| 09 | [生態瓶](./3-terrarium/solution/README.md) | CSS 實踐 | 建立 CSS 來設計線上生態瓶,專注於 CSS 基礎,包括讓頁面響應式 | [CSS 簡介](./3-terrarium/2-intro-to-css/README.md) | Jen | +| 10 | [生態瓶](./3-terrarium/solution/README.md) | JavaScript 閉包與 DOM 操作 | 建立 JavaScript 讓生態瓶具備拖放功能,專注於閉包與 DOM 操作 | [JavaScript 閉包與 DOM 操作](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | +| 11 | [打字遊戲](./4-typing-game/solution/README.md) | 建立一個打字遊戲 | 學習如何使用鍵盤事件來驅動 JavaScript 應用程式的邏輯 | [事件驅動程式設計](./4-typing-game/typing-game/README.md) | Christopher | +| 12 | [綠色瀏覽器擴展](./5-browser-extension/solution/README.md) | 瀏覽器操作 | 學習瀏覽器的運作方式、歷史,以及如何搭建瀏覽器擴展的基本架構 | [關於瀏覽器](./5-browser-extension/1-about-browsers/README.md) | Jen | +| 13 | [綠色瀏覽器擴展](./5-browser-extension/solution/README.md) | 建立表單、調用 API 並將變數存儲於本地存儲 | 建立瀏覽器擴展的 JavaScript 元素,使用本地存儲的變數調用 API | [API、表單與本地存儲](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | +| 14 | [綠色瀏覽器擴展](./5-browser-extension/solution/README.md) | 瀏覽器背景進程與網頁效能 | 使用瀏覽器的背景進程管理擴展的圖標;學習網頁效能及一些優化方法 | [背景任務與效能](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | +| 15 | [太空遊戲](./6-space-game/solution/README.md) | 更進階的 JavaScript 遊戲開發 | 學習使用類別與組合的繼承,以及 Pub/Sub 模式,為開發遊戲做準備 | [進階遊戲開發簡介](./6-space-game/1-introduction/README.md) | Chris | +| 16 | [太空遊戲](./6-space-game/solution/README.md) | 繪製到畫布 | 學習使用 Canvas API,將元素繪製到螢幕上 | [繪製到畫布](./6-space-game/2-drawing-to-canvas/README.md) | Chris | +| 17 | [太空遊戲](./6-space-game/solution/README.md) | 在螢幕上移動元素 | 探索如何使用笛卡爾座標與 Canvas API 讓元素移動 | [移動元素](./6-space-game/3-moving-elements-around/README.md) | Chris | +| 18 | [太空遊戲](./6-space-game/solution/README.md) | 碰撞檢測 | 使用按鍵讓元素碰撞並相互反應,並提供冷卻功能以確保遊戲效能 | [碰撞檢測](./6-space-game/4-collision-detection/README.md) | Chris | | 19 | [太空遊戲](./6-space-game/solution/README.md) | 計分 | 根據遊戲的狀態與效能進行數學計算 | [計分](./6-space-game/5-keeping-score/README.md) | Chris | -| 20 | [太空遊戲](./6-space-game/solution/README.md) | 結束與重新開始遊戲 | 學習如何結束與重新開始遊戲,包括清理資源與重置變數值 | [結束條件](./6-space-game/6-end-condition/README.md) | Chris | -| 21 | [銀行應用程式](./7-bank-project/solution/README.md) | 網頁應用程式中的 HTML 模板與路由 | 學習如何使用路由與 HTML 模板建立多頁網站的架構 | [HTML 模板與路由](./7-bank-project/1-template-route/README.md) | Yohan | -| 22 | [銀行應用程式](./7-bank-project/solution/README.md) | 建立登入與註冊表單 | 學習如何建立表單並處理驗證流程 | [表單](./7-bank-project/2-forms/README.md) | Yohan | -| 23 | [銀行應用程式](./7-bank-project/solution/README.md) | 資料的擷取與使用方法 | 學習資料如何在應用程式中流動,如何擷取、儲存與處理 | [資料](./7-bank-project/3-data/README.md) | Yohan | -| 24 | [銀行應用程式](./7-bank-project/solution/README.md) | 狀態管理概念 | 學習應用程式如何保留狀態以及如何以程式方式管理狀態 | [狀態管理](./7-bank-project/4-state-management/README.md) | Yohan | -| 25 | [瀏覽器/VScode 程式碼](../../8-code-editor) | 使用 VScode | 學習如何使用程式碼編輯器| [使用 VScode 程式碼編輯器](./8-code-editor/1-using-a-code-editor/README.md) | Chris | -| 26 | [AI 助理](./9-chat-project/README.md) | 使用 AI | 學習如何建立自己的 AI 助理 | [AI 助理專案](./9-chat-project/README.md) | Chris | +| 20 | [太空遊戲](./6-space-game/solution/README.md) | 結束與重啟遊戲 | 學習如何結束與重啟遊戲,包括清理資產與重置變數值 | [結束條件](./6-space-game/6-end-condition/README.md) | Chris | +| 21 | [銀行應用程式](./7-bank-project/solution/README.md) | 網頁應用程式中的 HTML 模板與路由 | 學習如何使用路由與 HTML 模板搭建多頁網站的架構 | [HTML 模板與路由](./7-bank-project/1-template-route/README.md) | Yohan | +| 22 | [銀行應用程式](./7-bank-project/solution/README.md) | 建立登入與註冊表單 | 學習如何建立表單與處理驗證流程 | [表單](./7-bank-project/2-forms/README.md) | Yohan | +| 23 | [銀行應用程式](./7-bank-project/solution/README.md) | 獲取與使用資料的方法 | 學習資料如何在應用程式中流動、獲取、存儲與處理 | [資料](./7-bank-project/3-data/README.md) | Yohan | +| 24 | [銀行應用程式](./7-bank-project/solution/README.md) | 狀態管理概念 | 學習應用程式如何保留狀態以及如何以程式方式管理它 | [狀態管理](./7-bank-project/4-state-management/README.md) | Yohan | +| 25 | [瀏覽器/VScode 編輯器](../../8-code-editor) | 使用 VScode | 學習如何使用程式碼編輯器| [使用 VScode 編輯器](./8-code-editor/1-using-a-code-editor/README.md) | Chris | +| 26 | [AI 助手](./9-chat-project/README.md) | 使用 AI | 學習如何建立自己的 AI 助手 | [AI 助手專案](./9-chat-project/README.md) | Chris | ## 🏫 教學法 -我們的課程設計基於兩個主要教學原則: +我們的課程設計基於兩個關鍵教學原則: * 專案導向學習 * 頻繁測驗 -此課程教授 JavaScript、HTML 和 CSS 的基礎知識,以及現代網頁開發者使用的最新工具與技術。學生將有機會透過建立打字遊戲、虛擬生態瓶、環保瀏覽器擴充功能、類太空侵略者遊戲以及商業銀行應用程式來獲得實作經驗。到課程結束時,學生將對網頁開發有扎實的理解。 +本課程教授 JavaScript、HTML 和 CSS 的基礎知識,以及當今網頁開發者使用的最新工具與技術。學生將有機會透過建立打字遊戲、虛擬生態瓶、環保瀏覽器擴展、太空侵略者風格遊戲以及商業銀行應用程式來獲得實作經驗。完成課程後,學生將對網頁開發有扎實的理解。 -> 🎓 您可以在 Microsoft Learn 上以 [學習路徑](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) 的形式學習此課程的前幾堂課! +> 🎓 你可以在 Microsoft Learn 上以 [學習路徑](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) 的形式學習本課程的前幾堂課! -透過確保內容與專案相符,學習過程對學生而言更具吸引力,並能增強概念的記憶。我們還撰寫了幾個 JavaScript 基礎的入門課程來介紹概念,並搭配 "[JavaScript 初學者系列](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" 的影片教程,其中一些作者也參與了此課程的編寫。 +透過確保內容與專案相符,學習過程對學生來說更具吸引力,並能增強概念的記憶。我們還撰寫了幾個 JavaScript 基礎的入門課程來介紹概念,並搭配 "[JavaScript 初學者系列](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" 的影片教學,其中一些作者也參與了本課程的編寫。 -此外,課前的低壓測驗能幫助學生專注於學習主題,而課後的第二次測驗則能進一步加強記憶。此課程設計靈活有趣,可完整學習或部分選修。專案從小型開始,並在 12 週的課程周期中逐漸變得更為複雜。 +此外,課前的低壓力測驗能讓學生專注於學習主題,而課後的第二次測驗則能進一步鞏固記憶。本課程設計靈活有趣,可以整體學習或部分學習。專案從簡單開始,並在 12 週的課程結束時逐漸變得複雜。 -雖然我們刻意避免介紹 JavaScript 框架,以專注於網頁開發者在採用框架之前所需的基本技能,但完成此課程後的下一步可以是學習 Node.js,透過另一系列影片:"[Node.js 初學者系列](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)"。 +我們有意避免介紹 JavaScript 框架,以專注於成為網頁開發者所需的基本技能,完成本課程後,下一步可以透過另一系列影片學習 Node.js:"[Node.js 初學者系列](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)"。 -> 請參閱我們的 [行為準則](CODE_OF_CONDUCT.md) 和 [貢獻指南](CONTRIBUTING.md)。我們歡迎您的建設性反饋! +> 請參閱我們的 [行為準則](CODE_OF_CONDUCT.md) 和 [貢獻指南](CONTRIBUTING.md)。我們歡迎你的建設性反饋! ## 🧭 離線存取 -您可以使用 [Docsify](https://docsify.js.org/#/) 離線運行此文件。Fork 此 repo,並在本地機器上 [安裝 Docsify](https://docsify.js.org/#/quickstart),然後在此 repo 的根目錄中輸入 `docsify serve`。網站將在本地端的 3000 埠上運行:`localhost:3000`。 +你可以使用 [Docsify](https://docsify.js.org/#/) 離線運行此文件。Fork 此 repo,並在本地機器上 [安裝 Docsify](https://docsify.js.org/#/quickstart),然後在此 repo 的根目錄中輸入 `docsify serve`。網站將在本地端的 3000 埠上運行:`localhost:3000`。 ## 📘 PDF -所有課程的 PDF 可在 [此處](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf) 找到。 +所有課程的 PDF 可在 [這裡](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf) 找到。 ## 🎒 其他課程 @@ -205,14 +203,14 @@ CO_OP_TRANSLATOR_METADATA: ### Azure / Edge / MCP / Agents [![AZD for Beginners](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst) -[![Edge AI 初學者](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst) -[![MCP 初學者](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst) -[![AI Agents 初學者](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst) +[![Edge AI 初學者課程](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst) +[![MCP 初學者課程](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst) +[![AI Agents 初學者課程](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst) --- ### 生成式 AI 系列 -[![生成式 AI 初學者](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst) +[![生成式 AI 初學者課程](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst) [![生成式 AI (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst) [![生成式 AI (Java)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst) [![生成式 AI (JavaScript)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst) @@ -220,13 +218,13 @@ CO_OP_TRANSLATOR_METADATA: --- ### 核心學習 -[![機器學習初學者](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst) -[![數據科學初學者](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst) -[![人工智能初學者](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst) -[![網絡安全初學者](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung) -[![Web 開發初學者](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst) -[![物聯網初學者](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst) -[![XR 開發初學者](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst) +[![機器學習初學者課程](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst) +[![數據科學初學者課程](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst) +[![人工智能初學者課程](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst) +[![網絡安全初學者課程](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung) +[![網頁開發初學者課程](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst) +[![物聯網初學者課程](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst) +[![XR 開發初學者課程](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst) --- @@ -235,21 +233,23 @@ CO_OP_TRANSLATOR_METADATA: [![Copilot C#/.NET](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst) [![Copilot 冒險](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst) -## 獲取幫助 +## 尋求幫助 -如果您在構建人工智能應用程序時遇到困難或有任何問題,請加入: +如果您在建立 AI 應用程式時遇到困難或有任何疑問,歡迎加入學習者和有經驗的開發者的討論。這是一個支持性的社群,問題受到歡迎,知識自由分享。 -[![Azure AI Foundry Discord](https://img.shields.io/badge/Discord-Azure_AI_Foundry_Community_Discord-blue?style=for-the-badge&logo=discord&color=5865f2&logoColor=fff)](https://aka.ms/foundry/discord) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) -如果您有產品反饋或在構建過程中遇到錯誤,請訪問: +如果您有產品反饋或在建構過程中遇到錯誤,請訪問: -[![Azure AI Foundry Developer Forum](https://img.shields.io/badge/GitHub-Azure_AI_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) +[![Microsoft Foundry Developer Forum](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) ## 授權 -此存儲庫採用 MIT 授權。請參閱 [LICENSE](../../LICENSE) 文件以獲取更多信息。 +此存儲庫採用 MIT 授權。請參閱 [LICENSE](../../LICENSE) 文件以獲取更多資訊。 --- + **免責聲明**: -本文件已使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。儘管我們努力確保準確性,但請注意,自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應被視為權威來源。對於關鍵信息,建議使用專業人工翻譯。我們對因使用此翻譯而產生的任何誤解或誤釋不承擔責任。 \ No newline at end of file +此文件已使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 翻譯。我們致力於提供準確的翻譯,但請注意,自動翻譯可能包含錯誤或不準確之處。應以原文文件作為權威來源。對於關鍵資訊,建議尋求專業人工翻譯。我們對因使用此翻譯而引起的任何誤解或誤釋不承擔責任。 + \ No newline at end of file diff --git a/translations/nl/1-getting-started-lessons/2-github-basics/README.md b/translations/nl/1-getting-started-lessons/2-github-basics/README.md index 7aaee8d2..e798519a 100644 --- a/translations/nl/1-getting-started-lessons/2-github-basics/README.md +++ b/translations/nl/1-getting-started-lessons/2-github-basics/README.md @@ -1,50 +1,49 @@ # Introductie tot GitHub -Hallo daar, toekomstige ontwikkelaar! 👋 Klaar om je aan te sluiten bij miljoenen programmeurs wereldwijd? Ik ben echt enthousiast om je kennis te laten maken met GitHub – zie het als een soort social media platform voor programmeurs, maar in plaats van foto's van je lunch te delen, delen we code en bouwen we samen geweldige dingen! +Hallo daar, toekomstige ontwikkelaar! 👋 Klaar om je aan te sluiten bij miljoenen programmeurs over de hele wereld? Ik ben echt enthousiast om je kennis te laten maken met GitHub – zie het als een soort social media platform voor programmeurs, maar in plaats van foto's van je lunch te delen, delen we code en bouwen we samen geweldige dingen! -Wat ik echt geweldig vind: elke app op je telefoon, elke website die je bezoekt, en de meeste tools die je leert gebruiken, zijn gemaakt door teams van ontwikkelaars die samenwerken op platforms zoals GitHub. Die muziekapp waar je dol op bent? Iemand zoals jij heeft eraan bijgedragen. Dat spel waar je niet mee kunt stoppen? Ja, waarschijnlijk gebouwd met GitHub-samenwerking. En nu ga JIJ leren hoe je deel kunt uitmaken van die geweldige community! +Wat ik echt geweldig vind: elke app op je telefoon, elke website die je bezoekt, en de meeste tools die je gaat leren gebruiken, zijn gebouwd door teams van ontwikkelaars die samenwerken op platforms zoals GitHub. Die muziekapp waar je dol op bent? Iemand zoals jij heeft eraan bijgedragen. Dat spel waar je niet mee kunt stoppen? Ja, waarschijnlijk gebouwd met GitHub-samenwerking. En nu ga JIJ leren hoe je deel kunt uitmaken van die geweldige community! -Ik weet dat dit in het begin misschien wat overweldigend lijkt – ik weet nog dat ik naar mijn eerste GitHub-pagina staarde en dacht: "Wat betekent dit allemaal?" Maar het zit zo: elke ontwikkelaar is precies begonnen waar jij nu bent. Aan het einde van deze les heb je je eigen GitHub-repository (zie het als je persoonlijke projectshowcase in de cloud), en weet je hoe je je werk kunt opslaan, delen met anderen, en zelfs bijdragen aan projecten die door miljoenen mensen worden gebruikt. +Ik weet dat dit in het begin misschien wat overweldigend lijkt – ik herinner me nog dat ik naar mijn eerste GitHub-pagina staarde en dacht: "Wat betekent dit allemaal?" Maar hier is het ding: elke ontwikkelaar is precies begonnen waar jij nu bent. Aan het einde van deze les heb je je eigen GitHub-repository (zie het als je persoonlijke projectshowcase in de cloud), en weet je hoe je je werk kunt opslaan, delen met anderen, en zelfs bijdragen aan projecten die door miljoenen mensen worden gebruikt. -We gaan deze reis samen maken, stap voor stap. Geen haast, geen druk – alleen jij, ik, en een paar hele coole tools die je nieuwe beste vrienden gaan worden! +We gaan deze reis samen maken, stap voor stap. Geen haast, geen druk – alleen jij, ik, en een paar echt coole tools die je nieuwe beste vrienden gaan worden! ![Intro tot GitHub](../../../../translated_images/webdev101-github.8846d7971abef6f947909b4f9d343e2a23778aa716ca6b9d71df7174ee5009ac.nl.png) > Sketchnote door [Tomomi Imura](https://twitter.com/girlie_mac) ```mermaid journey - title Your GitHub Adventure Today - section Setup - Install Git: 4: You - Create Account: 5: You - First Repository: 5: You - section Master Git - Local Changes: 4: You - Commits & Pushes: 5: You - Branching: 4: You - section Collaborate - Fork Projects: 4: You - Pull Requests: 5: You - Open Source: 5: You + title Jouw GitHub Avontuur Vandaag + section Instellen + Installeer Git: 4: Jij + Maak Account: 5: Jij + Eerste Repository: 5: Jij + section Beheers Git + Lokale Wijzigingen: 4: Jij + Commits & Pushes: 5: Jij + Vertakken: 4: Jij + section Samenwerken + Fork Projecten: 4: Jij + Pull Requests: 5: Jij + Open Source: 5: Jij ``` - -## Quiz voor de les -[Quiz voor de les](https://ff-quizzes.netlify.app) +## Pre-Lecture Quiz +[Pre-lecture quiz](https://ff-quizzes.netlify.app) ## Introductie -Voordat we aan de echt spannende dingen beginnen, gaan we je computer klaarmaken voor wat GitHub-magie! Zie dit als het organiseren van je kunstbenodigdheden voordat je een meesterwerk maakt – de juiste tools klaar hebben maakt alles zoveel soepeler en veel leuker. +Voordat we in de echt spannende dingen duiken, gaan we je computer klaarmaken voor wat GitHub-magie! Zie dit als het organiseren van je kunstbenodigdheden voordat je een meesterwerk maakt – de juiste tools klaar hebben maakt alles zoveel soepeler en veel leuker. -Ik ga je persoonlijk door elke stap van de setup leiden, en ik beloof dat het niet zo intimiderend is als het er in eerste instantie uitziet. Als iets niet meteen duidelijk is, is dat helemaal normaal! Ik weet nog dat ik mijn eerste ontwikkelomgeving instelde en het gevoel had dat ik oude hiërogliefen probeerde te ontcijferen. Elke ontwikkelaar heeft precies gestaan waar jij nu bent, zich afvragend of ze het goed doen. Spoiler alert: als je hier aan het leren bent, doe je het al goed! 🌟 +Ik ga je persoonlijk door elke stap van de setup leiden, en ik beloof dat het niet zo intimiderend is als het er in eerste instantie uitziet. Als iets niet meteen duidelijk is, is dat helemaal normaal! Ik herinner me dat ik mijn eerste ontwikkelomgeving instelde en het gevoel had dat ik oude hiërogliefen probeerde te lezen. Elke ontwikkelaar heeft precies gestaan waar jij nu bent, zich afvragend of ze het goed doen. Spoiler alert: als je hier bent en leert, doe je het al goed! 🌟 In deze les behandelen we: @@ -54,16 +53,16 @@ In deze les behandelen we: ### Vereisten -Laten we je computer klaarmaken voor wat GitHub-magie! Maak je geen zorgen – deze setup hoef je maar één keer te doen, en dan ben je helemaal klaar voor je hele programmeerreis. +Laten we je computer klaarmaken voor wat GitHub-magie! Maak je geen zorgen – deze setup hoef je maar één keer te doen, en dan ben je helemaal klaar voor je hele codeerreis. Oké, laten we beginnen met de basis! Eerst moeten we controleren of Git al op je computer staat. Git is eigenlijk als een super slimme assistent die elke verandering die je aan je code maakt onthoudt – veel beter dan elke twee seconden paniekerig op Ctrl+S drukken (we hebben het allemaal gedaan!). Laten we kijken of Git al is geïnstalleerd door dit magische commando in je terminal te typen: `git --version` -Als Git nog niet geïnstalleerd is, geen zorgen! Ga gewoon naar [download Git](https://git-scm.com/downloads) en haal het binnen. Zodra je het hebt geïnstalleerd, moeten we Git goed aan je voorstellen: +Als Git er nog niet is, geen zorgen! Ga gewoon naar [download Git](https://git-scm.com/downloads) en haal het op. Zodra je het hebt geïnstalleerd, moeten we Git goed aan je voorstellen: -> 💡 **Eerste keer instellen**: Deze commando's vertellen Git wie je bent. Deze informatie wordt gekoppeld aan elke commit die je maakt, dus kies een naam en e-mailadres die je comfortabel openbaar wilt delen. +> 💡 **Eerste keer instellen**: Deze commando's vertellen Git wie je bent. Deze informatie wordt gekoppeld aan elke commit die je maakt, dus kies een naam en e-mailadres die je comfortabel openbaar kunt delen. ```bash git config --global user.name "your-name" @@ -77,11 +76,11 @@ git config --list Je hebt ook een GitHub-account nodig, een code-editor (zoals Visual Studio Code), en je moet je terminal (of: command prompt) openen. -Ga naar [github.com](https://github.com/) en maak een account aan als je dat nog niet hebt gedaan, of log in en vul je profiel in. +Ga naar [github.com](https://github.com/) en maak een account aan als je dat nog niet hebt, of log in en vul je profiel in. 💡 **Moderne tip**: Overweeg het instellen van [SSH-sleutels](https://docs.github.com/en/authentication/connecting-to-github-with-ssh) of het gebruik van [GitHub CLI](https://cli.github.com/) voor eenvoudigere authenticatie zonder wachtwoorden. -✅ GitHub is niet de enige code repository in de wereld; er zijn andere, maar GitHub is de bekendste. +✅ GitHub is niet de enige code repository ter wereld; er zijn anderen, maar GitHub is de bekendste. ### Voorbereiding @@ -91,26 +90,26 @@ Je hebt zowel een map met een codeproject op je lokale machine (laptop of pc) no Laten we het even over beveiliging hebben – maar maak je geen zorgen, we gaan je niet overweldigen met enge dingen! Zie deze beveiligingspraktijken als het op slot doen van je auto of je huis. Het zijn eenvoudige gewoontes die vanzelfsprekend worden en je harde werk beschermen. -We laten je vanaf het begin de moderne, veilige manieren zien om met GitHub te werken. Op deze manier ontwikkel je goede gewoontes die je goed van pas zullen komen tijdens je programmeercarrière. +We laten je vanaf het begin de moderne, veilige manieren zien om met GitHub te werken. Op deze manier ontwikkel je goede gewoontes die je goed van pas zullen komen tijdens je hele carrière als ontwikkelaar. Bij het werken met GitHub is het belangrijk om de beste beveiligingspraktijken te volgen: | Beveiligingsgebied | Beste praktijk | Waarom het belangrijk is | -|--------------------|---------------|--------------------------| +|--------------------|----------------|--------------------------| | **Authenticatie** | Gebruik SSH-sleutels of Personal Access Tokens | Wachtwoorden zijn minder veilig en worden uitgefaseerd | | **Tweefactorauthenticatie** | Schakel 2FA in op je GitHub-account | Voegt een extra laag bescherming toe aan je account | -| **Repositorybeveiliging** | Nooit gevoelige informatie committen | API-sleutels en wachtwoorden mogen nooit in openbare repos staan | +| **Repositorybeveiliging** | Commit nooit gevoelige informatie | API-sleutels en wachtwoorden mogen nooit in openbare repositories staan | | **Afhankelijkheidsbeheer** | Schakel Dependabot in voor updates | Houdt je afhankelijkheden veilig en up-to-date | -> ⚠️ **Belangrijke beveiligingsherinnering**: Nooit API-sleutels, wachtwoorden of andere gevoelige informatie committen naar een repository. Gebruik omgevingsvariabelen en `.gitignore`-bestanden om gevoelige gegevens te beschermen. +> ⚠️ **Belangrijke beveiligingsherinnering**: Commit nooit API-sleutels, wachtwoorden of andere gevoelige informatie naar een repository. Gebruik omgevingsvariabelen en `.gitignore`-bestanden om gevoelige gegevens te beschermen. **Moderne authenticatie-instelling:** ```bash -# Generate SSH key (modern ed25519 algorithm) +# Genereer SSH-sleutel (moderne ed25519-algoritme) ssh-keygen -t ed25519 -C "your_email@example.com" -# Set up Git to use SSH +# Stel Git in om SSH te gebruiken git remote set-url origin git@github.com:username/repository.git ``` @@ -120,62 +119,61 @@ git remote set-url origin git@github.com:username/repository.git ## Je code beheren als een pro -Oké, DIT is waar het echt spannend wordt! 🎉 We gaan leren hoe je je code kunt volgen en beheren zoals de professionals dat doen, en eerlijk gezegd is dit een van mijn favoriete dingen om te leren omdat het zo'n game-changer is. +Oké, DIT is waar het echt spannend wordt! 🎉 We gaan leren hoe je je code kunt bijhouden en beheren zoals de professionals dat doen, en eerlijk gezegd is dit een van mijn favoriete dingen om te leren omdat het zo'n game-changer is. -Stel je dit voor: je schrijft een geweldig verhaal en je wilt elke versie, elke briljante bewerking, en elke "wacht, dat is geniaal!" moment onderweg bijhouden. Dat is precies wat Git doet voor je code! Het is alsof je een ongelooflijk tijdreizend notitieboek hebt dat ALLES onthoudt – elke toetsaanslag, elke verandering, elke "oeps, dat heeft alles kapot gemaakt" moment dat je direct kunt terugdraaien. +Stel je dit voor: je schrijft een geweldig verhaal en je wilt elke versie, elke briljante bewerking en elke "wacht, dat is geniaal!" moment onderweg bijhouden. Dat is precies wat Git doet voor je code! Het is alsof je een ongelooflijk tijdreizend notitieboek hebt dat ALLES onthoudt – elke toetsaanslag, elke verandering, elke "oeps, dat heeft alles kapot gemaakt" moment dat je onmiddellijk kunt terugdraaien. -Ik geef toe – dit kan in het begin overweldigend aanvoelen. Toen ik begon, dacht ik: "Waarom kan ik mijn bestanden niet gewoon normaal opslaan?" Maar vertrouw me hierop: zodra Git voor je klikt (en dat zal gebeuren!), krijg je een van die aha-momenten waarin je denkt: "Hoe heb ik OOIT geprogrammeerd zonder dit?" Het is alsof je ontdekt dat je kunt vliegen terwijl je overal naartoe liep! +Ik zal eerlijk zijn – dit kan in het begin overweldigend aanvoelen. Toen ik begon, dacht ik: "Waarom kan ik mijn bestanden niet gewoon normaal opslaan?" Maar vertrouw me hierop: zodra Git voor je klikt (en dat zal gebeuren!), krijg je een van die aha-momenten waarin je denkt: "Hoe heb ik OOIT gecodeerd zonder dit?" Het is alsof je ontdekt dat je kunt vliegen terwijl je overal naartoe liep! -Stel dat je een map lokaal hebt met een codeproject en je wilt je voortgang gaan volgen met git - het versiebeheersysteem. Sommige mensen vergelijken het gebruik van git met het schrijven van een liefdesbrief aan je toekomstige zelf. Door je commitberichten dagen, weken of maanden later te lezen, kun je je herinneren waarom je een bepaalde beslissing hebt genomen, of een wijziging "terugdraaien" – dat is, als je goede "commitberichten" schrijft. +Stel dat je een map lokaal hebt met een codeproject en je wilt je voortgang gaan bijhouden met git - het versiebeheersysteem. Sommige mensen vergelijken het gebruik van git met het schrijven van een liefdesbrief aan je toekomstige zelf. Door je commitberichten dagen, weken of maanden later te lezen, kun je je herinneren waarom je een beslissing hebt genomen, of een verandering "terugdraaien" – dat is, als je goede "commitberichten" schrijft. ```mermaid flowchart TD - A[📁 Your Project Files] --> B{Is it a Git Repository?} - B -->|No| C[git init] - B -->|Yes| D[Make Changes] + A[📁 Jouw Projectbestanden] --> B{Is het een Git Repository?} + B -->|Nee| C[git init] + B -->|Ja| D[Aanpassingen maken] C --> D D --> E[git add .] - E --> F["git commit -m 'message'"] + E --> F["git commit -m 'bericht'"] F --> G[git push] - G --> H[🌟 Code on GitHub!] + G --> H[🌟 Code op GitHub!] - H --> I{Want to collaborate?} - I -->|Yes| J[Fork & Clone] - I -->|No| D - J --> K[Create Branch] - K --> L[Make Changes] + H --> I{Wil je samenwerken?} + I -->|Ja| J[Fork & Clone] + I -->|Nee| D + J --> K[Maak een Branch] + K --> L[Aanpassingen maken] L --> M[Pull Request] - M --> N[🎉 Contributing!] + M --> N[🎉 Bijdragen!] style A fill:#fff59d style H fill:#c8e6c9 style N fill:#ff4081,color:#fff ``` - ### Taak: Maak je eerste repository! -> 🎯 **Je missie (en ik ben zo enthousiast voor je!)**: We gaan samen je allereerste GitHub-repository maken! Tegen de tijd dat we klaar zijn, heb je je eigen plekje op het internet waar je code leeft, en heb je je eerste "commit" gemaakt (dat is ontwikkelaarstaal voor het opslaan van je werk op een slimme manier). +> 🎯 **Je missie (en ik ben zo enthousiast voor je!)**: We gaan samen je allereerste GitHub-repository maken! Tegen de tijd dat we hier klaar zijn, heb je je eigen plekje op het internet waar je code leeft, en heb je je eerste "commit" gemaakt (dat is ontwikkelaarstaal voor het slim opslaan van je werk). > -> Dit is echt zo'n speciaal moment – je staat op het punt officieel deel uit te maken van de wereldwijde community van ontwikkelaars! Ik herinner me nog de opwinding van het maken van mijn eerste repo en dacht: "Wauw, ik ben echt bezig!" +> Dit is echt zo'n speciaal moment – je staat op het punt officieel deel uit te maken van de wereldwijde community van ontwikkelaars! Ik herinner me nog de opwinding van het maken van mijn eerste repo en dacht: "Wauw, ik doe dit echt!" -Laten we dit avontuur samen doorlopen, stap voor stap. Neem de tijd voor elk onderdeel – er is geen prijs voor haasten, en ik beloof dat elke stap logisch zal zijn. Onthoud, elke programmeer-superster die je bewondert, zat ooit precies waar jij nu zit, klaar om hun eerste repository te maken. Hoe gaaf is dat? +Laten we dit avontuur samen doorlopen, stap voor stap. Neem de tijd voor elk onderdeel – er is geen prijs voor haasten, en ik beloof dat elke stap logisch zal zijn. Onthoud, elke codeer-superster die je bewondert, zat ooit precies waar jij nu bent, klaar om hun eerste repository te maken. Hoe cool is dat? -> Bekijk de video +> Bekijk video > > [![Git en GitHub basisvideo](https://img.youtube.com/vi/9R31OUPpxU4/0.jpg)](https://www.youtube.com/watch?v=9R31OUPpxU4) **Laten we dit samen doen:** -1. **Maak je repository op GitHub**. Ga naar GitHub.com en zoek naar die felgroene **New** knop (of het **+** teken rechtsboven). Klik erop en selecteer **New repository**. +1. **Maak je repository op GitHub**. Ga naar GitHub.com en zoek naar die felgroene **Nieuwe** knop (of het **+** teken in de rechterbovenhoek). Klik erop en selecteer **Nieuwe repository**. Hier is wat je moet doen: 1. Geef je repository een naam – maak het iets dat betekenisvol is voor jou! 1. Voeg een beschrijving toe als je wilt (dit helpt anderen te begrijpen waar je project over gaat) 1. Beslis of je het openbaar (iedereen kan het zien) of privé (alleen voor jou) wilt maken 1. Ik raad aan om het vakje aan te vinken om een README-bestand toe te voegen – het is als de voorpagina van je project - 1. Klik op **Create repository** en vier feest – je hebt zojuist je eerste repo gemaakt! 🎉 + 1. Klik op **Repository maken** en vier feest – je hebt zojuist je eerste repo gemaakt! 🎉 -2. **Navigeer naar je projectmap**. Laten we nu je terminal openen (maak je geen zorgen, het is niet zo eng als het eruitziet!). We moeten je computer vertellen waar je projectbestanden zijn. Typ dit commando: +2. **Navigeer naar je projectmap**. Laten we nu je terminal openen (maak je geen zorgen, het is niet zo eng als het lijkt!). We moeten je computer vertellen waar je projectbestanden zijn. Typ dit commando: ```bash cd [name of your folder] @@ -193,8 +191,8 @@ Laten we dit avontuur samen doorlopen, stap voor stap. Neem de tijd voor elk ond ``` **Wat er net is gebeurd (best cool spul!):** - - Git heeft een verborgen `.git` map in je project gemaakt – je ziet het niet, maar het is er! - - Je gewone map is nu een "repository" die elke verandering die je maakt kan volgen + - Git heeft een verborgen `.git`-map in je project gemaakt – je ziet het niet, maar het is er! + - Je gewone map is nu een "repository" die elke verandering die je maakt kan bijhouden - Zie het als het geven van superkrachten aan je map om alles te onthouden 4. **Controleer wat er gebeurt**. Laten we kijken wat Git denkt over je project op dit moment: @@ -205,7 +203,7 @@ Laten we dit avontuur samen doorlopen, stap voor stap. Neem de tijd voor elk ond **Begrijpen wat Git je vertelt:** - Je ziet misschien iets dat er ongeveer zo uitziet: + Je ziet misschien iets dat er zo uitziet: ```output Changes not staged for commit: @@ -216,12 +214,12 @@ Laten we dit avontuur samen doorlopen, stap voor stap. Neem de tijd voor elk ond modified: file2.txt ``` - **Geen paniek! Dit is wat dit betekent:** - - Bestanden in **rood** zijn bestanden die wijzigingen hebben maar nog niet klaar zijn om opgeslagen te worden + **Geen paniek! Dit is wat het betekent:** + - Bestanden in **rood** zijn bestanden die veranderingen hebben maar nog niet klaar zijn om opgeslagen te worden - Bestanden in **groen** (wanneer je ze ziet) zijn klaar om opgeslagen te worden - Git is behulpzaam door je precies te vertellen wat je hierna kunt doen - > 💡 **Pro tip**: Het `git status` commando is je beste vriend! Gebruik het altijd als je in de war bent over wat er aan de hand is. Het is alsof je Git vraagt: "Hé, wat is de situatie op dit moment?" + > 💡 **Pro tip**: Het `git status`-commando is je beste vriend! Gebruik het altijd als je niet zeker weet wat er aan de hand is. Het is als Git vragen: "Hé, wat is de situatie op dit moment?" 5. **Maak je bestanden klaar om op te slaan** (dit heet "staging"): @@ -241,21 +239,21 @@ Laten we dit avontuur samen doorlopen, stap voor stap. Neem de tijd voor elk ond ``` **Waarom zou je dit willen doen?** - - Soms wil je gerelateerde wijzigingen samen opslaan + - Soms wil je gerelateerde veranderingen samen opslaan - Het helpt je werk te organiseren in logische stukken - - Maakt het gemakkelijker te begrijpen wat er is veranderd en wanneer + - Maakt het gemakkelijker om te begrijpen wat er is veranderd en wanneer **Van gedachten veranderd?** Geen zorgen! Je kunt bestanden uit de staging halen zoals dit: ```bash - # Unstage everything + # Alles ongedaan maken git reset - # Unstage just one file + # Alleen één bestand ongedaan maken git reset [file name] ``` - Maak je geen zorgen – dit verwijdert je werk niet, het haalt bestanden gewoon uit de "klaar om op te slaan" stapel. + Maak je geen zorgen – dit verwijdert je werk niet, het haalt bestanden gewoon uit de "klaar om op te slaan"-stapel. 6. **Sla je werk permanent op** (maak je eerste commit!): @@ -267,51 +265,51 @@ Laten we dit avontuur samen doorlopen, stap voor stap. Neem de tijd voor elk ond **Wat er net is gebeurd:** - Git heeft een "snapshot" gemaakt van alle gestaged bestanden op dit exacte moment - - Je commitbericht "first commit" legt uit waar dit opslagpunt over gaat + - Je commitbericht "eerste commit" legt uit waar dit opslagpunt over gaat - Git heeft deze snapshot een unieke ID gegeven zodat je het altijd later kunt vinden - - Je bent officieel begonnen met het volgen van de geschiedenis van je project! + - Je bent officieel begonnen met het bijhouden van de geschiedenis van je project! - > 💡 **Toekomstige commitberichten**: Voor je volgende commits, wees meer beschrijvend! In plaats van "updated stuff", probeer "Contactformulier toegevoegd aan homepage" of "Bug in navigatiemenu opgelost". Je toekomstige zelf zal je dankbaar zijn! + > 💡 **Toekomstige commitberichten**: Voor je volgende commits, wees meer beschrijvend! In plaats van "dingen bijgewerkt", probeer "Contactformulier toegevoegd aan homepage" of "Bug in navigatiemenu opgelost". Je toekomstige zelf zal je dankbaar zijn! 7. **Verbind je lokale project met GitHub**. Op dit moment bestaat je project alleen op je computer. Laten we het verbinden met je GitHub-repository zodat je het met de wereld kunt delen! - Ga eerst naar je GitHub-repositorypagina en kopieer de URL. Typ vervolgens: + Ga eerst naar je GitHub-repositorypagina en kopieer de URL. Kom dan hier terug en typ: ```bash git remote add origin https://github.com/username/repository_name.git ``` (Vervang die URL door de daadwerkelijke URL van je repository!) -**Wat we net hebben gedaan:** -- We hebben een verbinding gemaakt tussen je lokale project en je GitHub-repository. -- "Origin" is gewoon een bijnaam voor je GitHub-repository – het is alsof je een contact toevoegt aan je telefoon. -- Nu weet je lokale Git waar je je code naartoe moet sturen wanneer je klaar bent om deze te delen. -💡 **Makkelijker manier**: Als je GitHub CLI hebt geïnstalleerd, kun je dit met één commando doen: + **Wat we net hebben gedaan:** + - We hebben een verbinding gemaakt tussen je lokale project en je GitHub-repository. + - "Origin" is gewoon een bijnaam voor je GitHub-repository – het is alsof je een contact toevoegt aan je telefoon. + - Nu weet je lokale Git waar het je code naartoe moet sturen wanneer je klaar bent om deze te delen. + + 💡 **Makkelijkere manier**: Als je GitHub CLI hebt geïnstalleerd, kun je dit met één opdracht doen: ```bash gh repo create my-repo --public --push --source=. ``` - 8. **Stuur je code naar GitHub** (het grote moment!): ```bash git push -u origin main ``` -**🚀 Dit is het! Je uploadt je code naar GitHub!** - -**Wat er gebeurt:** -- Je commits reizen van je computer naar GitHub. -- De `-u` vlag stelt een permanente verbinding in, zodat toekomstige pushes eenvoudiger zijn. -- "main" is de naam van je primaire branch (zoals de hoofdmap). -- Hierna kun je gewoon `git push` typen voor toekomstige uploads! + **🚀 Dit is het! Je uploadt je code naar GitHub!** + + **Wat er gebeurt:** + - Je commits reizen van je computer naar GitHub. + - De `-u` vlag stelt een permanente verbinding in, zodat toekomstige pushes eenvoudiger zijn. + - "main" is de naam van je primaire branch (zoals de hoofdmap). + - Hierna kun je gewoon `git push` typen voor toekomstige uploads! -💡 **Snel notitie**: Als je branch een andere naam heeft (zoals "master"), gebruik dan die naam. Je kunt dit controleren met `git branch --show-current`. + 💡 **Snelle opmerking**: Als je branch een andere naam heeft (zoals "master"), gebruik dan die naam. Je kunt dit controleren met `git branch --show-current`. 9. **Je nieuwe dagelijkse coderitme** (hier wordt het verslavend!): -Vanaf nu, telkens wanneer je wijzigingen aanbrengt in je project, volg je deze eenvoudige drie stappen: + Vanaf nu, telkens wanneer je wijzigingen aanbrengt in je project, volg je deze eenvoudige drie stappen: ```bash git add . @@ -319,71 +317,71 @@ Vanaf nu, telkens wanneer je wijzigingen aanbrengt in je project, volg je deze e git push ``` -**Dit wordt je coderingsritme:** -- Maak geweldige wijzigingen in je code ✨ -- Stage ze met `git add` ("Hé Git, let op deze wijzigingen!") -- Sla ze op met `git commit` en een beschrijvend bericht (je toekomstige zelf zal je dankbaar zijn!) -- Deel ze met de wereld met `git push` 🚀 -- Herhaal – serieus, dit wordt net zo natuurlijk als ademhalen! + **Dit wordt je coderitme:** + - Maak geweldige wijzigingen in je code ✨ + - Stage ze met `git add` ("Hey Git, let op deze wijzigingen!") + - Sla ze op met `git commit` en een beschrijvende boodschap (je toekomstige zelf zal je dankbaar zijn!) + - Deel ze met de wereld met `git push` 🚀 + - Herhaal – serieus, dit wordt net zo natuurlijk als ademhalen! -Ik hou van deze workflow omdat het is alsof je meerdere save-punten hebt in een videogame. Heb je een wijziging gemaakt waar je trots op bent? Commit het! Wil je iets risicovols proberen? Geen probleem – je kunt altijd teruggaan naar je laatste commit als het misgaat! + Ik hou van deze workflow omdat het voelt alsof je meerdere save-punten hebt in een videogame. Heb je een wijziging gemaakt waar je trots op bent? Commit het! Wil je iets risicovols proberen? Geen probleem – je kunt altijd teruggaan naar je laatste commit als het misgaat! -> 💡 **Tip**: Je wilt misschien ook een `.gitignore`-bestand gebruiken om te voorkomen dat bestanden die je niet wilt volgen op GitHub verschijnen - zoals dat notitiebestand dat je in dezelfde map opslaat maar geen plaats heeft in een openbare repository. Je kunt sjablonen voor `.gitignore`-bestanden vinden op [.gitignore templates](https://github.com/github/gitignore) of er een maken met [gitignore.io](https://www.toptal.com/developers/gitignore). + > 💡 **Tip**: Je wilt misschien ook een `.gitignore`-bestand gebruiken om te voorkomen dat bestanden die je niet wilt volgen op GitHub verschijnen - zoals dat notitiebestand dat je in dezelfde map opslaat maar geen plaats heeft in een openbare repository. Je kunt sjablonen voor `.gitignore`-bestanden vinden op [.gitignore templates](https://github.com/github/gitignore) of er een maken met [gitignore.io](https://www.toptal.com/developers/gitignore). ### 🧠 **Eerste Repository Check-in: Hoe voelde dat?** **Neem een moment om te vieren en te reflecteren:** - Hoe voelde het om je code voor het eerst op GitHub te zien verschijnen? -- Welke stap vond je het meest verwarrend, en welke verrassend eenvoudig? -- Kun je het verschil uitleggen tussen `git add`, `git commit` en `git push` in je eigen woorden? +- Welke stap voelde het meest verwarrend en welke verrassend eenvoudig? +- Kun je in je eigen woorden het verschil uitleggen tussen `git add`, `git commit` en `git push`? ```mermaid stateDiagram-v2 - [*] --> LocalFiles: Create project + [*] --> LocalFiles: Maak project LocalFiles --> Staged: git add . Staged --> Committed: git commit Committed --> GitHub: git push - GitHub --> [*]: Success! 🎉 + GitHub --> [*]: Succes! 🎉 note right of Staged - Files ready to save + Bestanden klaar om op te slaan end note note right of Committed - Snapshot created + Snapshot gemaakt end note ``` - -> **Onthoud**: Zelfs ervaren ontwikkelaars vergeten soms de exacte commando's. Het kost tijd om deze workflow in je spiergeheugen te krijgen - je doet het geweldig! +> **Onthoud**: Zelfs ervaren ontwikkelaars vergeten soms de exacte commando's. Het laten inslijten van deze workflow als spiergeheugen kost oefening - je doet het geweldig! #### Moderne Git-workflows Overweeg deze moderne praktijken te adopteren: -- **Conventional Commits**: Gebruik een gestandaardiseerd commit-berichtformaat zoals `feat:`, `fix:`, `docs:`, enz. Meer informatie op [conventionalcommits.org](https://www.conventionalcommits.org/) -- **Atomic commits**: Zorg ervoor dat elke commit een enkele logische wijziging vertegenwoordigt. +- **Conventional Commits**: Gebruik een gestandaardiseerd formaat voor commitberichten zoals `feat:`, `fix:`, `docs:`, enz. Meer informatie op [conventionalcommits.org](https://www.conventionalcommits.org/) +- **Atomic commits**: Laat elke commit een enkele logische wijziging vertegenwoordigen. - **Frequent commits**: Commit vaak met beschrijvende berichten in plaats van grote, infrequente commits. -#### Commit-berichten +#### Commitberichten Een geweldig Git commit-onderwerpregel voltooit de volgende zin: Als toegepast, zal deze commit -Gebruik voor het onderwerp de gebiedende wijs, tegenwoordige tijd: "verander" in plaats van "veranderd" of "verandert". Net als in het onderwerp, gebruik je in de (optionele) body ook de gebiedende wijs, tegenwoordige tijd. De body moet de motivatie voor de wijziging bevatten en dit contrasteren met het vorige gedrag. Je legt de `waarom` uit, niet de `hoe`. +Gebruik voor het onderwerp de gebiedende wijs, tegenwoordige tijd: "verander" niet "veranderd" of "verandert". +Net als in het onderwerp, gebruik in de body (optioneel) ook de gebiedende wijs, tegenwoordige tijd. De body moet de motivatie voor de wijziging bevatten en dit contrasteren met het vorige gedrag. Je legt de `waarom` uit, niet de `hoe`. -✅ Neem een paar minuten om rond te surfen op GitHub. Kun je een echt geweldig commit-bericht vinden? Kun je een heel minimaal bericht vinden? Welke informatie denk je dat het meest belangrijk en nuttig is om over te brengen in een commit-bericht? +✅ Neem een paar minuten om rond te surfen op GitHub. Kun je een echt geweldig commitbericht vinden? Kun je een heel minimaal bericht vinden? Welke informatie denk je dat het meest belangrijk en nuttig is om over te brengen in een commitbericht? ## Samenwerken met anderen (Het leukste deel!) Hou je vast, want DIT is waar GitHub absoluut magisch wordt! 🪄 Je hebt geleerd hoe je je eigen code beheert, maar nu duiken we in mijn absolute favoriete deel – samenwerken met geweldige mensen van over de hele wereld. -Stel je dit voor: je wordt morgen wakker en ziet dat iemand in Tokio je code heeft verbeterd terwijl je sliep. Dan lost iemand in Berlijn een bug op waar je mee vastzat. Tegen de middag heeft een ontwikkelaar in São Paulo een functie toegevoegd waar je nooit aan had gedacht. Dat is geen sciencefiction – dat is gewoon een normale dinsdag in het GitHub-universum! +Stel je dit voor: je wordt morgen wakker en ziet dat iemand in Tokio je code heeft verbeterd terwijl je sliep. Dan lost iemand in Berlijn een bug op waar je vast mee zat. Tegen de middag heeft een ontwikkelaar in São Paulo een functie toegevoegd waar je nooit aan had gedacht. Dat is geen sciencefiction – dat is gewoon dinsdag in het GitHub-universum! -Wat mij echt enthousiast maakt, is dat de samenwerkingsvaardigheden die je nu gaat leren? Dit zijn PRECIES dezelfde workflows die teams bij Google, Microsoft en je favoriete startups elke dag gebruiken. Je leert niet alleen een coole tool – je leert de geheime taal die de hele softwarewereld samen laat werken. +Wat mij echt enthousiast maakt, is dat de samenwerkingsvaardigheden die je nu gaat leren? Dit zijn PRECIES dezelfde workflows die teams bij Google, Microsoft en je favoriete startups elke dag gebruiken. Je leert niet alleen een coole tool – je leert de geheime taal die ervoor zorgt dat de hele softwarewereld samenwerkt. -Serieus, zodra je de kick ervaart van iemand die je eerste pull request merge, begrijp je waarom ontwikkelaars zo gepassioneerd zijn over open source. Het is alsof je deel uitmaakt van 's werelds grootste, meest creatieve teamproject! +Serieus, zodra je de kick ervaart van iemand die je eerste pull request merge, begrijp je waarom ontwikkelaars zo gepassioneerd raken over open source. Het is alsof je deel uitmaakt van 's werelds grootste, meest creatieve teamproject! -> Bekijk de video +> Bekijk video > > [![Git en GitHub basisvideo](https://img.youtube.com/vi/bFCM-PC3cu8/0.jpg)](https://www.youtube.com/watch?v=bFCM-PC3cu8) @@ -391,29 +389,28 @@ De belangrijkste reden om dingen op GitHub te zetten was om samenwerking met and ```mermaid flowchart LR - A[🔍 Find Project] --> B[🍴 Fork Repository] - B --> C[📥 Clone to Local] - C --> D[🌿 Create Branch] - D --> E[✏️ Make Changes] - E --> F[💾 Commit Changes] + A[🔍 Vind Project] --> B[🍴 Fork Repository] + B --> C[📥 Clone naar Lokaal] + C --> D[🌿 Maak Branch] + D --> E[✏️ Maak Wijzigingen] + E --> F[💾 Commit Wijzigingen] F --> G[📤 Push Branch] - G --> H[🔄 Create Pull Request] - H --> I{Maintainer Review} - I -->|✅ Approved| J[🎉 Merge!] - I -->|❓ Changes Requested| K[📝 Make Updates] + G --> H[🔄 Maak Pull Request] + H --> I{Onderhoudersreview} + I -->|✅ Goedgekeurd| J[🎉 Samenvoegen!] + I -->|❓ Wijzigingen Aangevraagd| K[📝 Maak Updates] K --> F - J --> L[🧹 Clean Up Branches] + J --> L[🧹 Opruimen Branches] style A fill:#e3f2fd style J fill:#e8f5e8 style L fill:#fff3e0 ``` +Navigeer in je repository naar `Insights > Community` om te zien hoe je project zich verhoudt tot aanbevolen communitystandaarden. -In je repository, navigeer naar `Insights > Community` om te zien hoe je project zich verhoudt tot aanbevolen communitystandaarden. - -Wil je dat je repository er professioneel en uitnodigend uitziet? Ga naar je repository en klik op `Insights > Community`. Deze coole functie laat zien hoe je project zich verhoudt tot wat de GitHub-community beschouwt als "goede repository-praktijken." +Wil je je repository er professioneel en uitnodigend uit laten zien? Ga naar je repository en klik op `Insights > Community`. Deze coole functie laat zien hoe je project zich verhoudt tot wat de GitHub-community beschouwt als "goede repository-praktijken." -> 🎯 **Je project laten stralen**: Een goed georganiseerde repository met goede documentatie is als een schone, uitnodigende etalage. Het laat mensen zien dat je om je werk geeft en maakt dat anderen willen bijdragen! +> 🎯 **Je project laten stralen**: Een goed georganiseerde repository met goede documentatie is als een schone, uitnodigende winkel. Het laat mensen zien dat je om je werk geeft en maakt anderen enthousiast om bij te dragen! **Wat een repository geweldig maakt:** @@ -421,7 +418,7 @@ Wil je dat je repository er professioneel en uitnodigend uitziet? Ga naar je rep |--------------------|--------------------------|-----------------------| | **Beschrijving** | Eerste indrukken tellen! | Mensen weten meteen wat je project doet | | **README** | De voorpagina van je project | Als een vriendelijke gids voor nieuwe bezoekers | -| **Bijdrage-richtlijnen** | Laat zien dat je hulp verwelkomt | Mensen weten precies hoe ze kunnen helpen | +| **Bijdrage-richtlijnen** | Laat zien dat je hulp verwelkomt | Mensen weten precies hoe ze je kunnen helpen | | **Gedragscode** | Creëert een vriendelijke ruimte | Iedereen voelt zich welkom om deel te nemen | | **Licentie** | Juridische duidelijkheid | Anderen weten hoe ze je code kunnen gebruiken | | **Beveiligingsbeleid** | Laat zien dat je verantwoordelijk bent | Toont professionele praktijken | @@ -439,55 +436,54 @@ Wil je dat je repository er professioneel en uitnodigend uitziet? Ga naar je rep - **GitHub Projects** voor kanban-stijl projectbeheer. - **Branch-beschermingsregels** om codekwaliteitsnormen af te dwingen. -Al deze middelen zullen het onboarden van nieuwe teamleden ten goede komen. En dit zijn meestal de dingen waar nieuwe bijdragers naar kijken voordat ze zelfs maar naar je code kijken, om te bepalen of jouw project de juiste plek is om hun tijd aan te besteden. +Al deze middelen zullen het onboarden van nieuwe teamleden ten goede komen. En dit zijn meestal de dingen waar nieuwe bijdragers naar kijken voordat ze zelfs maar naar je code kijken, om te bepalen of jouw project de juiste plek is om hun tijd te besteden. ✅ README-bestanden, hoewel ze tijd kosten om te maken, worden vaak verwaarloosd door drukke maintainers. Kun je een voorbeeld vinden van een bijzonder beschrijvende README? Opmerking: er zijn enkele [tools om goede READMEs te maken](https://www.makeareadme.com/) die je misschien wilt proberen. ### Taak: Code samenvoegen -Bijdrage-documenten helpen mensen om bij te dragen aan het project. Het legt uit welke soorten bijdragen je zoekt en hoe het proces werkt. Bijdragers moeten een reeks stappen doorlopen om bij te kunnen dragen aan je repo op GitHub: +Bijdrage-documentatie helpt mensen bijdragen aan het project. Het legt uit welke soorten bijdragen je zoekt en hoe het proces werkt. Bijdragers moeten een reeks stappen doorlopen om te kunnen bijdragen aan je repo op GitHub: -1. **Fork je repo**. Je wilt waarschijnlijk dat mensen je project _forken_. Forken betekent dat ze een kopie van je repository maken op hun GitHub-profiel. -2. **Clone**. Vanaf daar klonen ze het project naar hun lokale machine. -3. **Maak een branch**. Je wilt dat ze een _branch_ maken voor hun werk. -4. **Focus hun wijziging op één gebied**. Vraag bijdragers om hun bijdragen op één ding tegelijk te concentreren - zo is de kans groter dat je hun werk kunt _mergen_. Stel je voor dat ze een bugfix schrijven, een nieuwe functie toevoegen en verschillende tests bijwerken - wat als je slechts 2 van de 3, of 1 van de 3 wijzigingen wilt of kunt implementeren? +1. **Je repo forken**. Je wilt waarschijnlijk dat mensen je project _forken_. Forken betekent dat ze een kopie van je repository maken op hun GitHub-profiel. +1. **Clonen**. Vanaf daar zullen ze het project naar hun lokale machine clonen. +1. **Een branch maken**. Je wilt dat ze een _branch_ maken voor hun werk. +1. **Focus hun wijziging op één gebied**. Vraag bijdragers om hun bijdragen op één ding tegelijk te concentreren - zo is de kans groter dat je hun werk kunt _mergen_. Stel je voor dat ze een bugfix schrijven, een nieuwe functie toevoegen en verschillende tests bijwerken - wat als je slechts 2 van de 3, of 1 van de 3 wijzigingen wilt of kunt implementeren? -✅ Stel je een situatie voor waarin branches bijzonder cruciaal zijn voor het schrijven en verzenden van goede code. Aan welke gebruiksscenario's kun je denken? +✅ Stel je een situatie voor waarin branches bijzonder cruciaal zijn voor het schrijven en verzenden van goede code. Welke gebruiksscenario's kun je bedenken? -> Let op, wees de verandering die je in de wereld wilt zien, en maak ook branches voor je eigen werk. Alle commits die je maakt, worden gemaakt op de branch waar je momenteel naar "uitgecheckt" bent. Gebruik `git status` om te zien welke branch dat is. +> Opmerking, wees de verandering die je wilt zien in de wereld, en maak ook branches voor je eigen werk. Alle commits die je maakt, worden gedaan op de branch waar je momenteel naar "uitgecheckt" bent. Gebruik `git status` om te zien welke branch dat is. -Laten we een workflow voor bijdragers doornemen. Stel dat de bijdrager de repo al heeft _geforkt_ en _gekloned_, zodat ze een Git-repo hebben die klaar is om aan te werken op hun lokale machine: +Laten we een workflow voor bijdragers doorlopen. Stel dat de bijdrager de repo al heeft _geforkt_ en _gecloned_, zodat ze een Git-repo hebben die klaar is om aan te werken op hun lokale machine: -1. **Maak een branch**. Gebruik het commando `git branch` om een branch te maken die de wijzigingen bevat die ze willen bijdragen: +1. **Een branch maken**. Gebruik het commando `git branch` om een branch te maken die de wijzigingen bevat die ze willen bijdragen: ```bash git branch [branch-name] ``` - > 💡 **Moderne aanpak**: Je kunt ook een nieuwe branch maken en er in één commando naar overschakelen: + > 💡 **Moderne aanpak**: Je kunt ook een nieuwe branch maken en ernaar overschakelen in één commando: ```bash git switch -c [branch-name] ``` - -2. **Schakel over naar de werkbranch**. Schakel over naar de opgegeven branch en werk de werkdirectory bij met `git switch`: +1. **Overschakelen naar werkbranch**. Schakel over naar de opgegeven branch en werk de werkmap bij met `git switch`: ```bash git switch [branch-name] ``` - > 💡 **Moderne notitie**: `git switch` is de moderne vervanging voor `git checkout` bij het wisselen van branches. Het is duidelijker en veiliger voor beginners. + > 💡 **Moderne opmerking**: `git switch` is de moderne vervanging voor `git checkout` bij het wisselen van branches. Het is duidelijker en veiliger voor beginners. -3. **Doe je werk**. Op dit punt wil je je wijzigingen toevoegen. Vergeet niet om Git hierover te informeren met de volgende commando's: +1. **Werk uitvoeren**. Op dit punt wil je je wijzigingen toevoegen. Vergeet niet om Git hierover te informeren met de volgende commando's: ```bash git add . git commit -m "my changes" ``` - > ⚠️ **Kwaliteit van commit-berichten**: Zorg ervoor dat je je commit een goede naam geeft, zowel voor jezelf als voor de maintainer van de repo waaraan je helpt. Wees specifiek over wat je hebt veranderd! + > ⚠️ **Commitberichtkwaliteit**: Zorg ervoor dat je je commit een goede naam geeft, zowel voor jezelf als voor de maintainer van de repo waaraan je helpt. Wees specifiek over wat je hebt veranderd! -4. **Combineer je werk met de `main` branch**. Op een gegeven moment ben je klaar met werken en wil je je werk combineren met dat van de `main` branch. De `main` branch kan ondertussen zijn veranderd, dus zorg ervoor dat je deze eerst bijwerkt naar de nieuwste versie met de volgende commando's: +1. **Je werk combineren met de `main` branch**. Op een gegeven moment ben je klaar met werken en wil je je werk combineren met dat van de `main` branch. De `main` branch kan ondertussen zijn veranderd, dus zorg ervoor dat je deze eerst bijwerkt naar de nieuwste versie met de volgende commando's: ```bash git switch main @@ -501,75 +497,73 @@ Laten we een workflow voor bijdragers doornemen. Stel dat de bijdrager de repo a git merge main ``` - Het commando `git merge main` zal alle wijzigingen van `main` in je branch brengen. Hopelijk kun je gewoon doorgaan. Zo niet, dan zal VS Code je vertellen waar Git _verward_ is en kun je de betreffende bestanden aanpassen om aan te geven welke inhoud het meest accuraat is. + Het commando `git merge main` brengt alle wijzigingen van `main` naar je branch. Hopelijk kun je gewoon doorgaan. Zo niet, dan zal VS Code je vertellen waar Git _verward_ is en pas je de getroffen bestanden aan om aan te geven welke inhoud het meest accuraat is. - 💡 **Modern alternatief**: Overweeg om `git rebase` te gebruiken voor een schonere geschiedenis: + 💡 **Modern alternatief**: Overweeg `git rebase` te gebruiken voor een schonere geschiedenis: ```bash git rebase main ``` - Dit speelt je commits opnieuw af bovenop de nieuwste main branch, waardoor een lineaire geschiedenis ontstaat. -5. **Stuur je werk naar GitHub**. Je werk naar GitHub sturen betekent twee dingen: je branch naar je repo pushen en vervolgens een PR (Pull Request) openen. +1. **Stuur je werk naar GitHub**. Je werk naar GitHub sturen betekent twee dingen. Je branch naar je repo pushen en vervolgens een PR, Pull Request, openen. ```bash git push --set-upstream origin [branch-name] ``` - Het bovenstaande commando maakt de branch aan in je geforkte repo. + Het bovenstaande commando maakt de branch aan op je geforkte repo. ### 🤝 **Samenwerkingsvaardigheden Check: Klaar om met anderen te werken?** **Laten we kijken hoe je je voelt over samenwerking:** - Begrijp je nu het idee van forken en pull requests? - Wat is één ding over werken met branches dat je meer wilt oefenen? -- Hoe comfortabel voel je je bij het bijdragen aan het project van iemand anders? +- Hoe comfortabel voel je je bij het bijdragen aan iemand anders' project? ```mermaid mindmap - root((Git Collaboration)) - Branching - Feature branches - Bug fix branches - Experimental work - Pull Requests - Code review - Discussion - Testing - Best Practices - Clear commit messages - Small focused changes - Good documentation + root((Git Samenwerking)) + Vertakken + Functievertakkingen + Bugfixvertakkingen + Experimenteel werk + Pull-verzoeken + Codebeoordeling + Discussie + Testen + Beste Praktijken + Duidelijke commitberichten + Kleine gerichte wijzigingen + Goede documentatie ``` +> **Zelfvertrouwenbooster**: Elke ontwikkelaar die je bewondert, was ooit nerveus over hun eerste pull request. De GitHub-community is ongelooflijk gastvrij voor nieuwkomers! -> **Zelfvertrouwen boost**: Elke ontwikkelaar die je bewondert, was ooit nerveus over hun eerste pull request. De GitHub-community is ongelooflijk gastvrij voor nieuwkomers! +1. **Open een PR**. Vervolgens wil je een PR openen. Dat doe je door naar de geforkte repo op GitHub te navigeren. Je ziet een indicatie op GitHub waar wordt gevraagd of je een nieuwe PR wilt maken, je klikt daarop en je wordt naar een interface gebracht waar je de commitberichttitel kunt wijzigen, een meer geschikte beschrijving kunt geven. Nu zal de maintainer van de repo die je hebt geforkt deze PR zien en _duimen omhoog_ hopelijk waarderen en _mergen_. Je bent nu een bijdrager, yay :) -6. **Open een PR**. Vervolgens wil je een PR openen. Dat doe je door naar de geforkte repo op GitHub te navigeren. Je ziet een indicatie op GitHub waar wordt gevraagd of je een nieuwe PR wilt maken. Klik daarop en je wordt naar een interface geleid waar je de commit-berichttitel kunt wijzigen en een meer geschikte beschrijving kunt geven. Nu ziet de maintainer van de repo die je hebt geforkt deze PR en _duimen omhoog_ ze zullen je PR waarderen en _mergen_. Je bent nu een bijdrager, yay :) - -💡 **Moderne tip**: Je kunt ook PR's maken met GitHub CLI: + 💡 **Moderne tip**: Je kunt ook PR's maken met GitHub CLI: ```bash gh pr create --title "Your PR title" --body "Description of changes" ``` -🔧 **Best practices voor PR's**: -- Link naar gerelateerde issues met trefwoorden zoals "Fixes #123". -- Voeg screenshots toe voor UI-wijzigingen. -- Vraag specifieke reviewers. -- Gebruik concept-PR's voor werk in uitvoering. -- Zorg ervoor dat alle CI-controles slagen voordat je een review aanvraagt. + 🔧 **Best practices voor PR's**: + - Link naar gerelateerde issues met trefwoorden zoals "Fixes #123". + - Voeg screenshots toe voor UI-wijzigingen. + - Vraag specifieke reviewers. + - Gebruik concept-PR's voor werk dat nog in uitvoering is. + - Zorg ervoor dat alle CI-controles slagen voordat je een review aanvraagt. 1. **Opruimen**. Het wordt als goede gewoonte beschouwd om _op te ruimen_ nadat je succesvol een PR hebt samengevoegd. Je wilt zowel je lokale branch als de branch die je naar GitHub hebt gepusht opruimen. Laten we eerst de lokale branch verwijderen met het volgende commando: ```bash git branch -d [branch-name] ``` - Ga vervolgens naar de GitHub-pagina van de geforkte repo en verwijder de remote branch die je zojuist hebt gepusht. + Ga vervolgens naar de GitHub-pagina van de geforkte repo en verwijder de remote branch die je net hebt gepusht. `Pull request` lijkt een vreemde term, omdat je eigenlijk je wijzigingen naar het project wilt pushen. Maar de maintainer (projecteigenaar) of het kernteam moet je wijzigingen beoordelen voordat ze worden samengevoegd met de "main" branch van het project. Je vraagt dus eigenlijk om een besluit over je wijziging van een maintainer. -Een pull request is de plek waar je de verschillen die zijn geïntroduceerd op een branch kunt vergelijken en bespreken, met reviews, opmerkingen, geïntegreerde tests en meer. Een goede pull request volgt ongeveer dezelfde regels als een commit-bericht. Je kunt een verwijzing naar een issue in de issue tracker toevoegen, bijvoorbeeld wanneer je werk een probleem oplost. Dit doe je door een `#` te gebruiken, gevolgd door het nummer van je issue. Bijvoorbeeld `#97`. +Een pull request is de plek om de verschillen die op een branch zijn geïntroduceerd te vergelijken en te bespreken, met reviews, opmerkingen, geïntegreerde tests en meer. Een goede pull request volgt ongeveer dezelfde regels als een commitbericht. Je kunt een verwijzing naar een issue in de issue tracker toevoegen, bijvoorbeeld wanneer je werk een issue oplost. Dit doe je met een `#` gevolgd door het nummer van je issue. Bijvoorbeeld `#97`. -🤞Duimen dat alle checks slagen en de projecteigenaar(s) je wijzigingen in het project samenvoegen🤞 +🤞Fingers crossed dat alle checks slagen en de projecteigenaar(s) je wijzigingen in het project samenvoegen 🤞 Werk je huidige lokale werkbranch bij met alle nieuwe commits van de corresponderende remote branch op GitHub: @@ -577,53 +571,52 @@ Werk je huidige lokale werkbranch bij met alle nieuwe commits van de corresponde ## Bijdragen aan Open Source (Jouw Kans om Impact te Maken!) -Ben je klaar voor iets dat je compleet gaat verbazen? 🤯 Laten we het hebben over bijdragen aan open source projecten – ik krijg kippenvel alleen al bij het idee om dit met je te delen! +Ben je klaar voor iets dat je compleet zal verbazen? 🤯 Laten we het hebben over bijdragen aan open source projecten – ik krijg kippenvel alleen al bij het idee om dit met je te delen! -Dit is jouw kans om deel uit te maken van iets echt buitengewoons. Stel je voor dat je de tools verbetert die miljoenen ontwikkelaars elke dag gebruiken, of een bug oplost in een app waar je vrienden dol op zijn. Dat is niet zomaar een droom – dat is waar bijdragen aan open source over gaat! +Dit is jouw kans om deel uit te maken van iets echt buitengewoons. Stel je voor dat je de tools verbetert die miljoenen ontwikkelaars elke dag gebruiken, of een bug oplost in een app die je vrienden geweldig vinden. Dat is niet zomaar een droom – dat is waar bijdragen aan open source om draait! -Hier is wat me elke keer weer kippenvel bezorgt als ik eraan denk: elke tool waarmee je hebt leren werken – je code-editor, de frameworks die we gaan verkennen, zelfs de browser waarin je dit leest – begon met iemand zoals jij die zijn allereerste bijdrage leverde. Die briljante ontwikkelaar die jouw favoriete VS Code-extensie heeft gebouwd? Die was ooit een beginner die met trillende handen op "create pull request" klikte, net zoals jij dat binnenkort gaat doen. +Hier is wat me elke keer weer kippenvel bezorgt: elke tool waarmee je hebt leren werken – je code-editor, de frameworks die we gaan verkennen, zelfs de browser waarin je dit leest – begon met iemand zoals jij die zijn allereerste bijdrage leverde. Die briljante ontwikkelaar die jouw favoriete VS Code-extensie heeft gebouwd? Die was ooit een beginner die met trillende handen op "create pull request" klikte, net zoals jij dat binnenkort gaat doen. -En hier is het mooiste: de open source community is als de grootste groepsknuffel van het internet. De meeste projecten zoeken actief naar nieuwkomers en hebben issues getagd met "good first issue" speciaal voor mensen zoals jij! Maintainers worden echt enthousiast als ze nieuwe bijdragers zien, omdat ze zich hun eigen eerste stappen herinneren. +En hier is het mooiste: de open source community is als de grootste groepsknuffel van het internet. De meeste projecten zoeken actief naar nieuwkomers en hebben issues getagd als "good first issue" speciaal voor mensen zoals jij! Maintainers worden echt enthousiast als ze nieuwe bijdragers zien, omdat ze zich hun eigen eerste stappen herinneren. ```mermaid flowchart TD - A[🔍 Explore GitHub] --> B[🏷️ Find "good first issue"] - B --> C[📖 Read Contributing Guidelines] + A[🔍 Verken GitHub] --> B[🏷️ Vind "goed eerste probleem"] + B --> C[📖 Lees Bijdrageregels] C --> D[🍴 Fork Repository] - D --> E[💻 Set Up Local Environment] - E --> F[🌿 Create Feature Branch] - F --> G[✨ Make Your Contribution] - G --> H[🧪 Test Your Changes] - H --> I[📝 Write Clear Commit] - I --> J[📤 Push & Create PR] - J --> K[💬 Engage with Feedback] - K --> L[🎉 Merged! You're a Contributor!] - L --> M[🌟 Find Next Issue] + D --> E[💻 Stel Lokale Omgeving In] + E --> F[🌿 Maak Feature Branch] + F --> G[✨ Maak Je Bijdrage] + G --> H[🧪 Test Je Wijzigingen] + H --> I[📝 Schrijf Duidelijke Commit] + I --> J[📤 Push & Maak PR] + J --> K[💬 Reageer op Feedback] + K --> L[🎉 Samengevoegd! Je bent een Bijdrager!] + L --> M[🌟 Vind Volgend Probleem] style A fill:#e1f5fe style L fill:#c8e6c9 style M fill:#fff59d ``` - Je leert hier niet alleen coderen – je bereidt je voor om deel uit te maken van een wereldwijde familie van bouwers die elke dag wakker worden met de gedachte "Hoe kunnen we de digitale wereld een beetje beter maken?" Welkom bij de club! 🌟 -Laten we eerst een repository (of **repo**) op GitHub vinden die je interesseert en waaraan je een wijziging wilt bijdragen. Je wilt de inhoud naar je computer kopiëren. +Laten we eerst een repository (of **repo**) op GitHub vinden die je interesseert en waaraan je een wijziging wilt bijdragen. Je wilt de inhoud naar je machine kopiëren. ✅ Een goede manier om 'beginner-vriendelijke' repos te vinden is door [te zoeken op de tag 'good-first-issue'](https://github.blog/2020-01-22-browse-good-first-issues-to-start-contributing-to-open-source/). ![Een repo lokaal kopiëren](../../../../translated_images/clone_repo.5085c48d666ead57664f050d806e325d7f883be6838c821e08bc823ab7c66665.nl.png) -Er zijn verschillende manieren om code te kopiëren. Een manier is om de inhoud van de repository te "clonen", met behulp van HTTPS, SSH of de GitHub CLI (Command Line Interface). +Er zijn verschillende manieren om code te kopiëren. Een manier is om de inhoud van de repository te "clonen", met behulp van HTTPS, SSH, of de GitHub CLI (Command Line Interface). -Open je terminal en clone de repository als volgt: +Open je terminal en clone de repository zoals volgt: ```bash -# Using HTTPS +# HTTPS gebruiken git clone https://github.com/ProjectURL -# Using SSH (requires SSH key setup) +# SSH gebruiken (vereist SSH-sleutelconfiguratie) git clone git@github.com:username/repository.git -# Using GitHub CLI +# GitHub CLI gebruiken gh repo clone username/repository ``` @@ -631,18 +624,18 @@ Om aan het project te werken, ga naar de juiste map: `cd ProjectURL` Je kunt het hele project ook openen met: -- **[GitHub Codespaces](https://github.com/features/codespaces)** - De cloudontwikkelomgeving van GitHub met VS Code in de browser +- **[GitHub Codespaces](https://github.com/features/codespaces)** - GitHub's cloudontwikkelomgeving met VS Code in de browser - **[GitHub Desktop](https://desktop.github.com/)** - Een GUI-applicatie voor Git-operaties -- **[GitHub.dev](https://github.dev)** - Druk op de `.`-toets in een GitHub-repo om VS Code in de browser te openen +- **[GitHub.dev](https://github.dev)** - Druk op de `.`-toets in een GitHub repo om VS Code in de browser te openen - **VS Code** met de GitHub Pull Requests-extensie -Je kunt de code ook downloaden in een gecomprimeerde map. +Je kunt de code ook downloaden in een gezipte map. ### Een paar interessante dingen over GitHub Je kunt elke openbare repository op GitHub ster geven, volgen en/of "forken". Je kunt je gestarred repositories vinden in het dropdownmenu rechtsboven. Het is als bladwijzers maken, maar dan voor code. -Projecten hebben een issue tracker, meestal op GitHub in het tabblad "Issues", tenzij anders aangegeven, waar mensen problemen met betrekking tot het project bespreken. En het tabblad Pull Requests is waar mensen wijzigingen bespreken en beoordelen die in behandeling zijn. +Projecten hebben een issue tracker, meestal op GitHub in de "Issues"-tab tenzij anders aangegeven, waar mensen problemen met betrekking tot het project bespreken. En de Pull Requests-tab is waar mensen wijzigingen bespreken en beoordelen die in behandeling zijn. Projecten kunnen ook discussies hebben in forums, mailinglijsten of chatkanalen zoals Slack, Discord of IRC. @@ -652,19 +645,19 @@ Projecten kunnen ook discussies hebben in forums, mailinglijsten of chatkanalen - **Security tab** - Rapporten over kwetsbaarheden en beveiligingsadviezen - **Actions tab** - Bekijk geautomatiseerde workflows en CI/CD-pijplijnen - **Insights tab** - Analytics over bijdragers, commits en projectgezondheid -- **Projects tab** - De ingebouwde projectmanagementtools van GitHub +- **Projects tab** - GitHub's ingebouwde projectmanagementtools -✅ Kijk rond in je nieuwe GitHub-repo en probeer een paar dingen, zoals instellingen bewerken, informatie toevoegen aan je repo, een project maken (zoals een Kanban-bord) en GitHub Actions instellen voor automatisering. Er is zoveel dat je kunt doen! +✅ Kijk eens rond in je nieuwe GitHub repo en probeer een paar dingen, zoals instellingen bewerken, informatie toevoegen aan je repo, een project maken (zoals een Kanban-bord), en GitHub Actions instellen voor automatisering. Er is zoveel dat je kunt doen! --- ## 🚀 Uitdaging -Oké, het is tijd om je nieuwe GitHub-superkrachten te testen! 🚀 Hier is een uitdaging die alles op de meest bevredigende manier laat klikken: +Oké, het is tijd om je nieuwe GitHub superkrachten te testen! 🚀 Hier is een uitdaging die alles op de meest bevredigende manier laat klikken: -Pak een vriend (of dat familielid dat altijd vraagt wat je doet met al die "computer dingen") en ga samen op een collaboratief codeeravontuur! Dit is waar de echte magie gebeurt – maak een project, laat hen het forken, maak wat branches en voeg wijzigingen samen zoals de professionals die jullie aan het worden zijn. +Pak een vriend (of dat familielid dat altijd vraagt wat je doet met al die "computer dingen") en ga samen op een collaboratief codeeravontuur! Dit is waar de echte magie gebeurt – maak een project, laat hen het forken, maak wat branches, en voeg wijzigingen samen zoals de professionals die jullie aan het worden zijn. -Ik ga niet liegen – je zult waarschijnlijk op een gegeven moment lachen (vooral als jullie allebei proberen dezelfde regel te wijzigen), misschien even in verwarring raken, maar je zult zeker die geweldige "aha!"-momenten hebben die alle moeite waard maken. Plus, er is iets speciaals aan het delen van die eerste succesvolle merge met iemand anders – het is als een kleine viering van hoe ver je bent gekomen! +Ik ga niet liegen – je zult waarschijnlijk op een gegeven moment lachen (vooral als jullie allebei proberen dezelfde regel te wijzigen), misschien je hoofd krabben van verwarring, maar je zult zeker die geweldige "aha!"-momenten hebben die al het leren de moeite waard maken. Plus, er is iets speciaals aan het delen van die eerste succesvolle merge met iemand anders – het is als een kleine viering van hoe ver je bent gekomen! Heb je nog geen codeervriend? Geen zorgen! De GitHub-community zit vol met ongelooflijk gastvrije mensen die zich herinneren hoe het was om nieuw te zijn. Zoek naar repositories met "good first issue"-labels – ze zeggen eigenlijk "Hey beginners, kom leren met ons!" Hoe geweldig is dat? @@ -682,7 +675,7 @@ Hier zijn een paar fantastische bronnen om je te helpen oefenen en nog beter te - [Gids voor bijdragen aan open source software](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) – Jouw routekaart om een verschil te maken - [Git cheatsheet](https://training.github.com/downloads/github-git-cheat-sheet/) – Houd deze bij de hand voor snelle referentie! -En onthoud: oefening maakt vooruitgang, geen perfectie! Hoe meer je Git en GitHub gebruikt, hoe natuurlijker het wordt. GitHub heeft enkele geweldige interactieve cursussen gemaakt waarmee je in een veilige omgeving kunt oefenen: +En onthoud: oefening maakt vooruitgang, geen perfectie! Hoe meer je Git en GitHub gebruikt, hoe natuurlijker het wordt. GitHub heeft een aantal geweldige interactieve cursussen gemaakt waarmee je in een veilige omgeving kunt oefenen: - [Introductie tot GitHub](https://github.com/skills/introduction-to-github) - [Communiceren met Markdown](https://github.com/skills/communicate-using-markdown) @@ -693,25 +686,25 @@ En onthoud: oefening maakt vooruitgang, geen perfectie! Hoe meer je Git en GitHu - [GitHub CLI documentatie](https://cli.github.com/manual/) – Voor wanneer je je als een command-line tovenaar wilt voelen - [GitHub Codespaces documentatie](https://docs.github.com/en/codespaces) – Code in de cloud! - [GitHub Actions documentatie](https://docs.github.com/en/actions) – Automatiseer alles -- [Git best practices](https://www.atlassian.com/git/tutorials/comparing-workflows) – Verhoog je workflowvaardigheden +- [Git best practices](https://www.atlassian.com/git/tutorials/comparing-workflows) – Verbeter je workflow ## GitHub Copilot Agent Uitdaging 🚀 Gebruik de Agent-modus om de volgende uitdaging te voltooien: -**Beschrijving:** Maak een collaboratief webontwikkelingsproject dat de volledige GitHub-workflow demonstreert die je in deze les hebt geleerd. Deze uitdaging helpt je om repository-creatie, samenwerkingsfuncties en moderne Git-workflows in een realistische situatie te oefenen. +**Beschrijving:** Maak een collaboratief webontwikkelingsproject dat de volledige GitHub workflow demonstreert die je in deze les hebt geleerd. Deze uitdaging helpt je om repository creatie, samenwerkingsfuncties en moderne Git workflows in een realistische situatie te oefenen. -**Prompt:** Maak een nieuwe openbare GitHub-repository voor een eenvoudig "Web Development Resources"-project. De repository moet een goed gestructureerd README.md-bestand bevatten met een lijst van nuttige webontwikkelingshulpmiddelen en -bronnen, georganiseerd per categorie (HTML, CSS, JavaScript, enz.). Stel de repository in met de juiste communitystandaarden, inclusief een licentie, richtlijnen voor bijdragen en een gedragscode. Maak ten minste twee feature branches: één voor het toevoegen van CSS-bronnen en een andere voor JavaScript-bronnen. Maak commits naar elke branch met beschrijvende commit-berichten, en maak vervolgens pull requests om de wijzigingen terug te voegen naar main. Schakel GitHub-functies zoals Issues, Discussions in en stel een basis GitHub Actions-workflow in voor geautomatiseerde controles. +**Prompt:** Maak een nieuwe openbare GitHub repository voor een eenvoudig "Web Development Resources"-project. De repository moet een goed gestructureerde README.md bevatten met een lijst van nuttige webontwikkelingshulpmiddelen en -bronnen, georganiseerd per categorie (HTML, CSS, JavaScript, etc.). Stel de repository in met de juiste communitystandaarden, inclusief een licentie, richtlijnen voor bijdragen en een gedragscode. Maak minstens twee feature branches: één voor het toevoegen van CSS-bronnen en een andere voor JavaScript-bronnen. Maak commits naar elke branch met beschrijvende commitberichten, en maak vervolgens pull requests om de wijzigingen terug te voegen naar main. Schakel GitHub-functies zoals Issues, Discussions in en stel een basis GitHub Actions workflow in voor geautomatiseerde checks. ## Opdracht Jouw missie, als je ervoor kiest om deze te accepteren: Voltooi de [Introductie tot GitHub](https://github.com/skills/introduction-to-github) cursus op GitHub Skills. Deze interactieve cursus laat je alles wat je hebt geleerd oefenen in een veilige, begeleide omgeving. Plus, je krijgt een coole badge als je klaar bent! 🏅 **Klaar voor meer uitdagingen?** -- Stel SSH-authenticatie in voor je GitHub-account (nooit meer wachtwoorden!) +- Stel SSH-authenticatie in voor je GitHub-account (geen wachtwoorden meer!) - Probeer GitHub CLI te gebruiken voor je dagelijkse Git-operaties -- Maak een repository met een GitHub Actions-workflow -- Verken GitHub Codespaces door deze repository te openen in een cloud-gebaseerde editor +- Maak een repository met een GitHub Actions workflow +- Verken GitHub Codespaces door deze repository te openen in een cloudgebaseerde editor --- @@ -724,58 +717,59 @@ Jouw missie, als je ervoor kiest om deze te accepteren: Voltooi de [Introductie - [ ] Volg 5 ontwikkelaars wiens werk je inspireert ### 🎯 **Wat Je Binnen Een Uur Kunt Bereiken** -- [ ] Voltooi de quiz na de les en reflecteer op je GitHub-reis +- [ ] Voltooi de post-les quiz en reflecteer op je GitHub-reis - [ ] Stel SSH-sleutels in voor wachtwoordvrije GitHub-authenticatie -- [ ] Maak je eerste betekenisvolle commit met een geweldig commit-bericht -- [ ] Verken het "Explore"-tabblad van GitHub om trending projecten te ontdekken +- [ ] Maak je eerste betekenisvolle commit met een geweldig commitbericht +- [ ] Verken GitHub's "Explore"-tab om trending projecten te ontdekken - [ ] Oefen met het forken van een repository en het maken van een kleine wijziging ### 📅 **Je Week-Lange GitHub Avontuur** -- [ ] Voltooi de GitHub Skills-cursussen (Introductie tot GitHub, Markdown) +- [ ] Voltooi de GitHub Skills cursussen (Introductie tot GitHub, Markdown) - [ ] Maak je eerste pull request naar een open source project -- [ ] Stel een GitHub Pages-site in om je werk te laten zien +- [ ] Stel een GitHub Pages site in om je werk te laten zien - [ ] Doe mee aan GitHub Discussions over projecten die je interesseren -- [ ] Maak een repository met de juiste communitystandaarden (README, Licentie, enz.) -- [ ] Probeer GitHub Codespaces voor cloud-gebaseerde ontwikkeling +- [ ] Maak een repository met de juiste communitystandaarden (README, Licentie, etc.) +- [ ] Probeer GitHub Codespaces voor cloudgebaseerde ontwikkeling ### 🌟 **Je Maand-Lange Transformatie** - [ ] Draag bij aan 3 verschillende open source projecten -- [ ] Begeleid iemand die nieuw is op GitHub (geef het door!) +- [ ] Mentor iemand die nieuw is op GitHub (geef het door!) - [ ] Stel geautomatiseerde workflows in met GitHub Actions -- [ ] Bouw een portfolio waarin je GitHub-bijdragen worden getoond +- [ ] Bouw een portfolio dat je GitHub-bijdragen laat zien - [ ] Doe mee aan Hacktoberfest of vergelijkbare community-evenementen - [ ] Word een maintainer van je eigen project waar anderen aan bijdragen -### 🎓 **Eindcontrole GitHub Meesterschap** +### 🎓 **Eindcontrole van GitHub Meesterschap** **Vier hoe ver je bent gekomen:** -- Wat vind je het leukste aan het gebruik van GitHub? +- Wat is je favoriete ding aan het gebruik van GitHub? - Welke samenwerkingsfunctie vind je het meest interessant? -- Hoe zelfverzekerd voel je je nu over bijdragen aan open source? +- Hoe zelfverzekerd voel je je over bijdragen aan open source nu? - Wat is het eerste project waaraan je wilt bijdragen? ```mermaid journey - title Your GitHub Confidence Journey - section Today - Nervous: 3: You - Curious: 4: You - Excited: 5: You - section This Week - Practicing: 4: You - Contributing: 5: You - Connecting: 5: You - section Next Month - Collaborating: 5: You - Leading: 5: You - Inspiring Others: 5: You + title Jouw GitHub Vertrouwen Reis + section Vandaag + Nerveus: 3: Jij + Nieuwsgierig: 4: Jij + Opgewonden: 5: Jij + section Deze Week + Oefenen: 4: Jij + Bijdragen: 5: Jij + Verbinden: 5: Jij + section Volgende Maand + Samenwerken: 5: Jij + Leiden: 5: Jij + Anderen Inspireren: 5: Jij ``` - > 🌍 **Welkom bij de wereldwijde ontwikkelaarscommunity!** Je hebt nu de tools om samen te werken met miljoenen ontwikkelaars wereldwijd. Je eerste bijdrage lijkt misschien klein, maar onthoud - elk groot open source project begon met iemand die zijn allereerste commit maakte. De vraag is niet of je impact zult maken, maar welk geweldig project als eerste zal profiteren van jouw unieke perspectief! 🚀 Onthoud: elke expert was ooit een beginner. Je kunt dit! 💪 --- + **Disclaimer**: -Dit document is vertaald met behulp van de AI-vertalingsservice [Co-op Translator](https://github.com/Azure/co-op-translator). Hoewel we streven naar nauwkeurigheid, dient u zich ervan bewust te zijn dat geautomatiseerde vertalingen fouten of onnauwkeurigheden kunnen bevatten. Het originele document in de oorspronkelijke taal moet worden beschouwd als de gezaghebbende bron. Voor kritieke informatie wordt professionele menselijke vertaling aanbevolen. Wij zijn niet aansprakelijk voor eventuele misverstanden of verkeerde interpretaties die voortvloeien uit het gebruik van deze vertaling. \ No newline at end of file +Dit document is vertaald met behulp van de AI-vertalingsservice [Co-op Translator](https://github.com/Azure/co-op-translator). Hoewel we streven naar nauwkeurigheid, dient u zich ervan bewust te zijn dat geautomatiseerde vertalingen fouten of onnauwkeurigheden kunnen bevatten. Het originele document in de oorspronkelijke taal moet worden beschouwd als de gezaghebbende bron. Voor kritieke informatie wordt professionele menselijke vertaling aanbevolen. Wij zijn niet aansprakelijk voor misverstanden of verkeerde interpretaties die voortvloeien uit het gebruik van deze vertaling. + \ No newline at end of file diff --git a/translations/nl/README.md b/translations/nl/README.md index 8862455d..01b56d61 100644 --- a/translations/nl/README.md +++ b/translations/nl/README.md @@ -1,213 +1,213 @@ -[![GitHub license](https://img.shields.io/github/license/microsoft/Web-Dev-For-Beginners.svg)](https://github.com/microsoft/Web-Dev-For-Beginners/blob/master/LICENSE) -[![GitHub contributors](https://img.shields.io/github/contributors/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/graphs/contributors/) -[![GitHub issues](https://img.shields.io/github/issues/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/issues/) -[![GitHub pull-requests](https://img.shields.io/github/issues-pr/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/pulls/) -[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) +[![GitHub license](https://img.shields.io/github/license/microsoft/Web-Dev-For-Beginners.svg)](https://github.com/microsoft/Web-Dev-For-Beginners/blob/master/LICENSE) +[![GitHub contributors](https://img.shields.io/github/contributors/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/graphs/contributors/) +[![GitHub issues](https://img.shields.io/github/issues/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/issues/) +[![GitHub pull-requests](https://img.shields.io/github/issues-pr/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/pulls/) +[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) -[![GitHub watchers](https://img.shields.io/github/watchers/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Watch&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/watchers/) -[![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Fork&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/network/) -[![GitHub stars](https://img.shields.io/github/stars/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Star&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/stargazers/) +[![GitHub watchers](https://img.shields.io/github/watchers/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Watch&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/watchers/) +[![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Fork&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/network/) +[![GitHub stars](https://img.shields.io/github/stars/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Star&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/stargazers/) -[![](https://dcbadge.vercel.app/api/server/ByRwuEEgH4)](https://discord.gg/zxKYvhSnVp?WT.mc_id=academic-000002-leestott) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) -# Webontwikkeling voor beginners - Een curriculum +# Webontwikkeling voor Beginners - Een Curriculum Leer de basisprincipes van webontwikkeling met onze 12-weekse uitgebreide cursus van Microsoft Cloud Advocates. Elke van de 24 lessen behandelt JavaScript, CSS en HTML via praktische projecten zoals terrariums, browserextensies en ruimtegames. Doe mee met quizzen, discussies en praktische opdrachten. Verhoog je vaardigheden en optimaliseer je kennisbehoud met onze effectieve projectgerichte aanpak. Begin vandaag nog met je codeerreis! Word lid van de Azure AI Foundry Discord Community -[![Microsoft Azure AI Foundry Discord](https://dcbadge.limes.pink/api/server/ByRwuEEgH4)](https://discord.com/invite/ByRwuEEgH4) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) -Volg deze stappen om aan de slag te gaan met deze bronnen: -1. **Fork de repository**: Klik op [![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/fork) -2. **Clone de repository**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` -3. [**Word lid van de Azure AI Foundry Discord en ontmoet experts en mede-ontwikkelaars**](https://discord.com/invite/ByRwuEEgH4) +Volg deze stappen om aan de slag te gaan met deze bronnen: +1. **Fork de Repository**: Klik [![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/fork) +2. **Clone de Repository**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` +3. [**Word lid van de Azure AI Foundry Discord en ontmoet experts en mede-ontwikkelaars**](https://discord.com/invite/ByRwuEEgH4) -### 🌐 Ondersteuning voor meerdere talen +### 🌐 Meertalige Ondersteuning -#### Ondersteund via GitHub Action (Automatisch & Altijd up-to-date) +#### Ondersteund via GitHub Action (Automatisch & Altijd Up-to-Date) [Arabisch](../ar/README.md) | [Bengaals](../bn/README.md) | [Bulgaars](../bg/README.md) | [Birmaans (Myanmar)](../my/README.md) | [Chinees (Vereenvoudigd)](../zh/README.md) | [Chinees (Traditioneel, Hong Kong)](../hk/README.md) | [Chinees (Traditioneel, Macau)](../mo/README.md) | [Chinees (Traditioneel, Taiwan)](../tw/README.md) | [Kroatisch](../hr/README.md) | [Tsjechisch](../cs/README.md) | [Deens](../da/README.md) | [Nederlands](./README.md) | [Ests](../et/README.md) | [Fins](../fi/README.md) | [Frans](../fr/README.md) | [Duits](../de/README.md) | [Grieks](../el/README.md) | [Hebreeuws](../he/README.md) | [Hindi](../hi/README.md) | [Hongaars](../hu/README.md) | [Indonesisch](../id/README.md) | [Italiaans](../it/README.md) | [Japans](../ja/README.md) | [Koreaans](../ko/README.md) | [Litouws](../lt/README.md) | [Maleis](../ms/README.md) | [Marathi](../mr/README.md) | [Nepalees](../ne/README.md) | [Noors](../no/README.md) | [Perzisch (Farsi)](../fa/README.md) | [Pools](../pl/README.md) | [Portugees (Brazilië)](../br/README.md) | [Portugees (Portugal)](../pt/README.md) | [Punjabi (Gurmukhi)](../pa/README.md) | [Roemeens](../ro/README.md) | [Russisch](../ru/README.md) | [Servisch (Cyrillisch)](../sr/README.md) | [Slowaaks](../sk/README.md) | [Sloveens](../sl/README.md) | [Spaans](../es/README.md) | [Swahili](../sw/README.md) | [Zweeds](../sv/README.md) | [Tagalog (Filipino)](../tl/README.md) | [Tamil](../ta/README.md) | [Thais](../th/README.md) | [Turks](../tr/README.md) | [Oekraïens](../uk/README.md) | [Urdu](../ur/README.md) | [Vietnamees](../vi/README.md) -**Als je wilt dat er extra vertalingen worden ondersteund, staan de ondersteunde talen [hier](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)** +**Als je extra vertalingen wilt, staan de ondersteunde talen [hier](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)** -[![Open in Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners) +[![Open in Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners) #### 🧑‍🎓 _Ben je een student?_ -Bezoek [**Student Hub pagina**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) waar je beginnersbronnen, studentenpakketten en zelfs manieren vindt om een gratis certificaatvoucher te krijgen. Dit is de pagina die je wilt bookmarken en af en toe wilt bekijken, omdat we maandelijks de inhoud wisselen. +Bezoek de [**Student Hub-pagina**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) waar je beginnersbronnen, studentpakketten en zelfs manieren vindt om een gratis certificaatvoucher te krijgen. Dit is de pagina die je wilt bookmarken en regelmatig wilt bekijken, aangezien we maandelijks de inhoud wisselen. -### 📣 Aankondiging - Nieuwe GitHub Copilot Agent mode uitdagingen om te voltooien! +### 📣 Aankondiging - Nieuwe GitHub Copilot Agent-modus uitdagingen om te voltooien! -Nieuwe uitdaging toegevoegd, zoek naar "GitHub Copilot Agent Challenge 🚀" in de meeste hoofdstukken. Dat is een nieuwe uitdaging voor jou om te voltooien met behulp van GitHub Copilot en Agent mode. Als je Agent mode nog niet hebt gebruikt, het kan niet alleen tekst genereren, maar ook bestanden maken en bewerken, opdrachten uitvoeren en meer. +Nieuwe uitdaging toegevoegd, zoek naar "GitHub Copilot Agent Challenge 🚀" in de meeste hoofdstukken. Dit is een nieuwe uitdaging die je kunt voltooien met GitHub Copilot en Agent-modus. Als je Agent-modus nog niet hebt gebruikt, het kan niet alleen tekst genereren, maar ook bestanden maken en bewerken, opdrachten uitvoeren en meer. -### 📣 Aankondiging - _Nieuw project om te bouwen met Generatieve AI_ +### 📣 Aankondiging - _Nieuw Project om te bouwen met Generatieve AI_ Nieuw AI-assistentproject zojuist toegevoegd, bekijk het [project](./09-chat-project/README.md) -### 📣 Aankondiging - _Nieuw curriculum_ over Generatieve AI voor JavaScript is zojuist uitgebracht +### 📣 Aankondiging - _Nieuw Curriculum_ over Generatieve AI voor JavaScript is zojuist uitgebracht Mis ons nieuwe Generatieve AI-curriculum niet! -Bezoek [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) om aan de slag te gaan! +Bezoek [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) om te beginnen! ![Achtergrond](../../translated_images/background.148a8d43afde57303419a663f50daf586681bc2fabf833f66ef6954073983c66.nl.png) - Lessen die alles behandelen, van basisprincipes tot RAG. -- Interactie met historische figuren met behulp van GenAI en onze begeleidende app. -- Leuke en boeiende verhaallijn, je gaat tijdreizen! +- Interactie met historische personages met GenAI en onze begeleidende app. +- Leuk en boeiend verhaal, je gaat tijdreizen! -![karakter](../../translated_images/character.5c0dd8e067ffd693c16e2c5b7412ab075a2215ce31f998305639fa3a05e14fbe.nl.png) +![personage](../../translated_images/character.5c0dd8e067ffd693c16e2c5b7412ab075a2215ce31f998305639fa3a05e14fbe.nl.png) -Elke les bevat een opdracht om te voltooien, een kennischeck en een uitdaging om je te begeleiden bij het leren van onderwerpen zoals: +Elke les bevat een opdracht om te voltooien, een kenniscontrole en een uitdaging om je te begeleiden bij het leren van onderwerpen zoals: - Prompting en prompt engineering -- Tekst- en afbeeldingsapp generatie +- Tekst- en afbeeldingsapp-generatie - Zoekapps -Bezoek [https://aka.ms/genai-js-course](../../[https:/aka.ms/genai-js-course) om aan de slag te gaan! - - +Bezoek [https://aka.ms/genai-js-course](../../[https:/aka.ms/genai-js-course) om te beginnen! ## 🌱 Aan de slag -> **Docenten**, we hebben [enkele suggesties opgenomen](for-teachers.md) over hoe u dit curriculum kunt gebruiken. We horen graag uw feedback [in ons discussieforum](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! +> **Docenten**, we hebben [enkele suggesties opgenomen](for-teachers.md) over hoe je dit curriculum kunt gebruiken. We horen graag je feedback [in ons discussieforum](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! **[Leerlingen](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, begin voor elke les met een quiz voorafgaand aan de les en ga verder met het lezen van het lesmateriaal, het voltooien van de verschillende activiteiten en controleer je begrip met de quiz na de les. -Om je leerervaring te verbeteren, kun je samenwerken met je medestudenten aan de projecten! Discussies worden aangemoedigd in ons [discussieforum](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) waar ons team van moderators beschikbaar zal zijn om je vragen te beantwoorden. +Om je leerervaring te verbeteren, werk samen met je medestudenten aan de projecten! Discussies worden aangemoedigd in ons [discussieforum](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) waar ons team van moderators beschikbaar zal zijn om je vragen te beantwoorden. Om je opleiding verder te ontwikkelen, raden we aan om [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) te verkennen voor aanvullende studiematerialen. ### 📋 Je omgeving instellen -Dit curriculum heeft een ontwikkelomgeving die klaar is voor gebruik! Zodra je begint, kun je ervoor kiezen om het curriculum te draaien in een [Codespace](https://github.com/features/codespaces/) (_een browsergebaseerde omgeving waarvoor geen installatie nodig is_), of lokaal op je computer met een teksteditor zoals [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). +Dit curriculum heeft een ontwikkelomgeving die klaar is voor gebruik! Zodra je begint, kun je ervoor kiezen om het curriculum te draaien in een [Codespace](https://github.com/features/codespaces/) (_een browsergebaseerde omgeving zonder installaties nodig_), of lokaal op je computer met een teksteditor zoals [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). -#### Maak je repository -Om je werk eenvoudig op te slaan, raden we aan om een eigen kopie van deze repository te maken. Dit kun je doen door op de knop **Use this template** bovenaan de pagina te klikken. Dit maakt een nieuwe repository in je GitHub-account met een kopie van het curriculum. +#### Maak je repository aan +Om je werk gemakkelijk op te slaan, raden we aan om je eigen kopie van deze repository te maken. Dit kun je doen door op de knop **Use this template** bovenaan de pagina te klikken. Dit maakt een nieuwe repository in je GitHub-account met een kopie van het curriculum. -Volg deze stappen: -1. **Fork de repository**: Klik op de knop "Fork" rechtsboven op deze pagina. -2. **Clone de repository**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` +Volg deze stappen: +1. **Fork de Repository**: Klik op de knop "Fork" rechtsboven op deze pagina. +2. **Clone de Repository**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` #### Het curriculum draaien in een Codespace -In jouw kopie van deze repository die je hebt gemaakt, klik je op de knop **Code** en selecteer je **Open with Codespaces**. Dit maakt een nieuwe Codespace voor je om in te werken. +In je kopie van deze repository die je hebt gemaakt, klik op de knop **Code** en selecteer **Open with Codespaces**. Dit maakt een nieuwe Codespace voor je om in te werken. ![Codespace](../../translated_images/createcodespace.0238bbf4d7a8d955fa8fa7f7b6602a3cb6499a24708fbee589f83211c5a613b7.nl.png) #### Het curriculum lokaal draaien op je computer -Om dit curriculum lokaal op je computer te draaien, heb je een teksteditor, een browser en een opdrachtregeltool nodig. Onze eerste les, [Introductie tot programmeertalen en tools](../../1-getting-started-lessons/1-intro-to-programming-languages), zal je door verschillende opties leiden voor elk van deze tools, zodat je kunt kiezen wat het beste bij je past. +Om dit curriculum lokaal op je computer te draaien, heb je een teksteditor, een browser en een opdrachtregeltool nodig. Onze eerste les, [Introductie tot Programmeertalen en Tools van het Vak](../../1-getting-started-lessons/1-intro-to-programming-languages), zal je door verschillende opties voor elk van deze tools leiden, zodat je kunt kiezen wat het beste voor je werkt. -Onze aanbeveling is om [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) als je editor te gebruiken, die ook een ingebouwde [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) heeft. Je kunt Visual Studio Code [hier downloaden](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). +Onze aanbeveling is om [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) te gebruiken als je editor, die ook een ingebouwde [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) heeft. Je kunt Visual Studio Code [hier downloaden](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). 1. Clone je repository naar je computer. Dit kun je doen door op de knop **Code** te klikken en de URL te kopiëren: [CodeSpace](./images/createcodespace.png) - Open vervolgens [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) binnen [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) en voer de volgende opdracht uit, waarbij je `` vervangt door de URL die je zojuist hebt gekopieerd: + Open vervolgens [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) binnen [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) en voer het volgende commando uit, waarbij je `` vervangt door de URL die je net hebt gekopieerd: ```bash git clone ``` + +2. Open de map in Visual Studio Code. Dit kun je doen door te klikken op **File** > **Open Folder** en de map te selecteren die je net hebt gekloond. -2. Open de map in Visual Studio Code. Dit kun je doen door te klikken op **File** > **Open Folder** en de map te selecteren die je zojuist hebt gekloond. - - -> Aanbevolen Visual Studio Code-extensies: -> +> Aanbevolen Visual Studio Code-extensies: +> > * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - om HTML-pagina's te bekijken binnen Visual Studio Code -> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - om je te helpen sneller code te schrijven +> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - om je te helpen sneller code te schrijven ## 📂 Elke les bevat: -- optionele sketchnote -- optionele aanvullende video -- opwarmquiz voorafgaand aan de les -- geschreven les -- voor projectgebaseerde lessen, stapsgewijze handleidingen om het project te bouwen -- kenniscontroles -- een uitdaging -- aanvullende literatuur -- opdracht -- [quiz na de les](https://ff-quizzes.netlify.app/web/) +- optionele sketchnote +- optionele aanvullende video +- opwarmquiz voorafgaand aan de les +- geschreven les +- voor projectgebaseerde lessen, stapsgewijze handleidingen om het project te bouwen +- kennischecks +- een uitdaging +- aanvullende literatuur +- opdracht +- [quiz na de les](https://ff-quizzes.netlify.app/web/) -> **Een opmerking over quizzen**: Alle quizzen zijn opgenomen in de Quiz-app map, in totaal 48 quizzen met elk drie vragen. Ze zijn beschikbaar [hier](https://ff-quizzes.netlify.app/web/). De quiz-app kan lokaal worden uitgevoerd of worden gedeployed naar Azure; volg de instructies in de `quiz-app` map. +> **Een opmerking over quizzen**: Alle quizzen zijn opgenomen in de Quiz-app map, in totaal 48 quizzen met elk drie vragen. Ze zijn beschikbaar [hier](https://ff-quizzes.netlify.app/web/) en de quiz-app kan lokaal worden uitgevoerd of worden gedeployed naar Azure; volg de instructies in de `quiz-app` map. ## 🗃️ Lessen -| | Projectnaam | Behandelde concepten | Leerdoelen | Gelinkte les | Auteur | -| :-: | :-----------------------------------------------------: | :--------------------------------------------------------------------------: | -------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------: | :---------------------: | -| 01 | Aan de slag | Introductie tot programmeren en tools van het vakgebied | Leer de basisprincipes achter de meeste programmeertalen en over software die professionele ontwikkelaars helpt bij hun werk | [Introductie tot programmeertalen en tools van het vakgebied](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine | -| 02 | Aan de slag | Basisprincipes van GitHub, inclusief samenwerken in een team | Hoe je GitHub gebruikt in je project en hoe je samenwerkt met anderen aan een codebase | [Introductie tot GitHub](./1-getting-started-lessons/2-github-basics/README.md) | Floor | -| 03 | Aan de slag | Toegankelijkheid | Leer de basisprincipes van webtoegankelijkheid | [Basisprincipes van toegankelijkheid](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | -| 04 | JS Basis | JavaScript Datatypes | De basis van JavaScript-datatypes | [Datatypes](./2-js-basics/1-data-types/README.md) | Jasmine | -| 05 | JS Basis | Functies en Methodes | Leer over functies en methodes om de logische stroom van een applicatie te beheren | [Functies en Methodes](./2-js-basics/2-functions-methods/README.md) | Jasmine en Christopher | -| 06 | JS Basis | Beslissingen nemen met JS | Leer hoe je voorwaarden in je code kunt maken met behulp van besluitvormingsmethoden | [Beslissingen nemen](./2-js-basics/3-making-decisions/README.md) | Jasmine | -| 07 | JS Basis | Arrays en Lussen | Werk met gegevens met behulp van arrays en lussen in JavaScript | [Arrays en Lussen](./2-js-basics/4-arrays-loops/README.md) | Jasmine | -| 08 | [Terrarium](./3-terrarium/solution/README.md) | HTML in de praktijk | Bouw de HTML om een online terrarium te maken, met de focus op het bouwen van een lay-out | [Introductie tot HTML](./3-terrarium/1-intro-to-html/README.md) | Jen | -| 09 | [Terrarium](./3-terrarium/solution/README.md) | CSS in de praktijk | Bouw de CSS om het online terrarium te stylen, met de focus op de basis van CSS, inclusief het responsief maken van de pagina | [Introductie tot CSS](./3-terrarium/2-intro-to-css/README.md) | Jen | -| 10 | [Terrarium](./3-terrarium/solution/README.md) | JavaScript Closures, DOM-manipulatie | Bouw de JavaScript om het terrarium te laten functioneren als een sleep-en-neerzet interface, met focus op closures en DOM-manipulatie | [JavaScript Closures, DOM-manipulatie](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | -| 11 | [Typingspel](./4-typing-game/solution/README.md) | Bouw een Typingspel | Leer hoe je toetsenbordgebeurtenissen kunt gebruiken om de logica van je JavaScript-app aan te sturen | [Event-Driven Programming](./4-typing-game/typing-game/README.md) | Christopher | -| 12 | [Groene Browserextensie](./5-browser-extension/solution/README.md) | Werken met Browsers | Leer hoe browsers werken, hun geschiedenis, en hoe je de eerste elementen van een browserextensie kunt opzetten | [Over Browsers](./5-browser-extension/1-about-browsers/README.md) | Jen | -| 13 | [Groene Browserextensie](./5-browser-extension/solution/README.md) | Formulieren bouwen, een API aanroepen en variabelen opslaan in lokale opslag | Bouw de JavaScript-elementen van je browserextensie om een API aan te roepen met variabelen opgeslagen in lokale opslag | [API's, Formulieren en Lokale Opslag](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | -| 14 | [Groene Browserextensie](./5-browser-extension/solution/README.md) | Achtergrondprocessen in de browser, webprestaties | Gebruik de achtergrondprocessen van de browser om het pictogram van de extensie te beheren; leer over webprestaties en optimalisaties | [Achtergrondtaken en Prestaties](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | -| 15 | [Ruimtespel](./6-space-game/solution/README.md) | Geavanceerdere Game Development met JavaScript | Leer over overerving met zowel klassen als compositie en het Pub/Sub-patroon, ter voorbereiding op het bouwen van een spel | [Introductie tot Geavanceerde Game Development](./6-space-game/1-introduction/README.md) | Chris | -| 16 | [Ruimtespel](./6-space-game/solution/README.md) | Tekenen op canvas | Leer over de Canvas API, gebruikt om elementen op een scherm te tekenen | [Tekenen op Canvas](./6-space-game/2-drawing-to-canvas/README.md) | Chris | -| 17 | [Ruimtespel](./6-space-game/solution/README.md) | Elementen over het scherm bewegen | Ontdek hoe elementen beweging kunnen krijgen met behulp van cartesiaanse coördinaten en de Canvas API | [Elementen Bewegen](./6-space-game/3-moving-elements-around/README.md) | Chris | -| 18 | [Ruimtespel](./6-space-game/solution/README.md) | Botsingsdetectie | Laat elementen botsen en op elkaar reageren met behulp van toetsaanslagen en zorg voor een cooldownfunctie voor de prestaties | [Botsingsdetectie](./6-space-game/4-collision-detection/README.md) | Chris | -| 19 | [Ruimtespel](./6-space-game/solution/README.md) | Score bijhouden | Voer wiskundige berekeningen uit op basis van de status en prestaties van het spel | [Score bijhouden](./6-space-game/5-keeping-score/README.md) | Chris | -| 20 | [Ruimtespel](./6-space-game/solution/README.md) | Het spel beëindigen en opnieuw starten | Leer hoe je het spel kunt beëindigen en opnieuw starten, inclusief het opruimen van middelen en het resetten van variabelen | [De Eindconditie](./6-space-game/6-end-condition/README.md) | Chris | -| 21 | [Bankapp](./7-bank-project/solution/README.md) | HTML-sjablonen en routes in een webapp | Leer hoe je de structuur van een meerpagina-website kunt opzetten met routing en HTML-sjablonen | [HTML-sjablonen en Routes](./7-bank-project/1-template-route/README.md) | Yohan | -| 22 | [Bankapp](./7-bank-project/solution/README.md) | Een inlog- en registratieformulier bouwen | Leer hoe je formulieren bouwt en validatieroutines uitvoert | [Formulieren](./7-bank-project/2-forms/README.md) | Yohan | -| 23 | [Bankapp](./7-bank-project/solution/README.md) | Methoden voor het ophalen en gebruiken van gegevens | Hoe gegevens in en uit je app stromen, hoe je ze ophaalt, opslaat en verwijdert | [Gegevens](./7-bank-project/3-data/README.md) | Yohan | -| 24 | [Bankapp](./7-bank-project/solution/README.md) | Concepten van State Management | Leer hoe je app de status behoudt en hoe je deze programmeerbaar kunt beheren | [State Management](./7-bank-project/4-state-management/README.md) | Yohan | +| | Projectnaam | Geleerde concepten | Leerdoelen | Gelinkte les | Auteur | +| :-: | :------------------------------------------------------: | :--------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------: | :---------------------: | +| 01 | Aan de slag | Introductie tot programmeren en tools van het vak | Leer de basisprincipes achter de meeste programmeertalen en over software die professionele ontwikkelaars helpt hun werk te doen | [Introductie tot programmeertalen en tools van het vak](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine | +| 02 | Aan de slag | Basisprincipes van GitHub, inclusief werken in een team | Hoe GitHub te gebruiken in je project, hoe samen te werken met anderen aan een codebase | [Introductie tot GitHub](./1-getting-started-lessons/2-github-basics/README.md) | Floor | +| 03 | Aan de slag | Toegankelijkheid | Leer de basisprincipes van webtoegankelijkheid | [Basisprincipes van toegankelijkheid](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | +| 04 | JS Basisprincipes | JavaScript Datatypes | De basisprincipes van JavaScript datatypes | [Datatypes](./2-js-basics/1-data-types/README.md) | Jasmine | +| 05 | JS Basisprincipes | Functies en Methoden | Leer over functies en methoden om de logische stroom van een applicatie te beheren | [Functies en Methoden](./2-js-basics/2-functions-methods/README.md) | Jasmine en Christopher | +| 06 | JS Basisprincipes | Beslissingen nemen met JS | Leer hoe je voorwaarden in je code kunt maken met behulp van besluitvormingsmethoden | [Beslissingen nemen](./2-js-basics/3-making-decisions/README.md) | Jasmine | +| 07 | JS Basisprincipes | Arrays en Lussen | Werk met data met behulp van arrays en lussen in JavaScript | [Arrays en Lussen](./2-js-basics/4-arrays-loops/README.md) | Jasmine | +| 08 | [Terrarium](./3-terrarium/solution/README.md) | HTML in de praktijk | Bouw de HTML om een online terrarium te maken, met de focus op het bouwen van een layout | [Introductie tot HTML](./3-terrarium/1-intro-to-html/README.md) | Jen | +| 09 | [Terrarium](./3-terrarium/solution/README.md) | CSS in de praktijk | Bouw de CSS om het online terrarium te stylen, met de focus op de basisprincipes van CSS inclusief het responsief maken van de pagina | [Introductie tot CSS](./3-terrarium/2-intro-to-css/README.md) | Jen | +| 10 | [Terrarium](./3-terrarium/solution/README.md) | JavaScript Closures, DOM manipulatie | Bouw de JavaScript om het terrarium te laten functioneren als een drag/drop interface, met de focus op closures en DOM manipulatie | [JavaScript Closures, DOM manipulatie](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | +| 11 | [Typingspel](./4-typing-game/solution/README.md) | Bouw een Typingspel | Leer hoe je toetsenbordgebeurtenissen kunt gebruiken om de logica van je JavaScript-app aan te sturen | [Event-Driven Programming](./4-typing-game/typing-game/README.md) | Christopher | +| 12 | [Groene Browserextensie](./5-browser-extension/solution/README.md) | Werken met Browsers | Leer hoe browsers werken, hun geschiedenis, en hoe je de eerste elementen van een browserextensie kunt opzetten | [Over Browsers](./5-browser-extension/1-about-browsers/README.md) | Jen | +| 13 | [Groene Browserextensie](./5-browser-extension/solution/README.md) | Een formulier bouwen, een API aanroepen en variabelen opslaan in lokale opslag | Bouw de JavaScript-elementen van je browserextensie om een API aan te roepen met variabelen opgeslagen in lokale opslag | [API's, Formulieren, en Lokale Opslag](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | +| 14 | [Groene Browserextensie](./5-browser-extension/solution/README.md) | Achtergrondprocessen in de browser, webprestaties | Gebruik de achtergrondprocessen van de browser om het pictogram van de extensie te beheren; leer over webprestaties en enkele optimalisaties om te maken | [Achtergrondtaken en Prestaties](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | +| 15 | [Ruimtespel](./6-space-game/solution/README.md) | Meer Geavanceerde Spelontwikkeling met JavaScript | Leer over Inheritance met zowel Classes als Composition en het Pub/Sub patroon, ter voorbereiding op het bouwen van een spel | [Introductie tot Geavanceerde Spelontwikkeling](./6-space-game/1-introduction/README.md) | Chris | +| 16 | [Ruimtespel](./6-space-game/solution/README.md) | Tekenen op canvas | Leer over de Canvas API, gebruikt om elementen op een scherm te tekenen | [Tekenen op Canvas](./6-space-game/2-drawing-to-canvas/README.md) | Chris | +| 17 | [Ruimtespel](./6-space-game/solution/README.md) | Elementen bewegen over het scherm | Ontdek hoe elementen beweging kunnen krijgen met behulp van cartesiaanse coördinaten en de Canvas API | [Elementen Bewegen](./6-space-game/3-moving-elements-around/README.md) | Chris | +| 18 | [Ruimtespel](./6-space-game/solution/README.md) | Botsingsdetectie | Laat elementen botsen en op elkaar reageren met behulp van toetsen en zorg voor een cooldown functie om de prestaties van het spel te garanderen | [Botsingsdetectie](./6-space-game/4-collision-detection/README.md) | Chris | +| 19 | [Ruimtespel](./6-space-game/solution/README.md) | Score bijhouden | Voer wiskundige berekeningen uit op basis van de status en prestaties van het spel | [Score Bijhouden](./6-space-game/5-keeping-score/README.md) | Chris | +| 20 | [Ruimtespel](./6-space-game/solution/README.md) | Het spel beëindigen en opnieuw starten | Leer over het beëindigen en opnieuw starten van het spel, inclusief het opruimen van assets en het resetten van variabele waarden | [De Eindconditie](./6-space-game/6-end-condition/README.md) | Chris | +| 21 | [Bankapp](./7-bank-project/solution/README.md) | HTML Templates en Routes in een Webapp | Leer hoe je de structuur van een meerpagina website kunt opzetten met routing en HTML templates | [HTML Templates en Routes](./7-bank-project/1-template-route/README.md) | Yohan | +| 22 | [Bankapp](./7-bank-project/solution/README.md) | Bouw een Inlog- en Registratieformulier | Leer over het bouwen van formulieren en het afhandelen van validatieroutines | [Formulieren](./7-bank-project/2-forms/README.md) | Yohan | +| 23 | [Bankapp](./7-bank-project/solution/README.md) | Methoden om Data op te halen en te gebruiken | Hoe data in en uit je app stroomt, hoe je het kunt ophalen, opslaan en verwijderen | [Data](./7-bank-project/3-data/README.md) | Yohan | +| 24 | [Bankapp](./7-bank-project/solution/README.md) | Concepten van State Management | Leer hoe je app de staat behoudt en hoe je deze programmatisch kunt beheren | [State Management](./7-bank-project/4-state-management/README.md) | Yohan | | 25 | [Browser/VScode Code](../../8-code-editor) | Werken met VScode | Leer hoe je een code-editor gebruikt | [Gebruik VScode Code Editor](./8-code-editor/1-using-a-code-editor/README.md) | Chris | | 26 | [AI Assistenten](./9-chat-project/README.md) | Werken met AI | Leer hoe je je eigen AI-assistent bouwt | [AI Assistent project](./9-chat-project/README.md) | Chris | ## 🏫 Pedagogiek -Ons curriculum is ontworpen met twee belangrijke pedagogische principes in gedachten: -* projectmatig leren -* frequente quizzen +Ons curriculum is ontworpen met twee belangrijke pedagogische principes in gedachten: +* projectgebaseerd leren +* frequente quizzen + +Het programma leert de basisprincipes van JavaScript, HTML en CSS, evenals de nieuwste tools en technieken die door hedendaagse webontwikkelaars worden gebruikt. Studenten krijgen de kans om praktische ervaring op te doen door een typingspel, virtueel terrarium, milieuvriendelijke browserextensie, ruimte-invader-stijl spel en een bankapp voor bedrijven te bouwen. Aan het einde van de serie hebben studenten een solide begrip van webontwikkeling opgedaan. -Het programma leert de basisprincipes van JavaScript, HTML en CSS, evenals de nieuwste tools en technieken die door hedendaagse webontwikkelaars worden gebruikt. Studenten krijgen de kans om praktische ervaring op te doen door een typingspel, virtueel terrarium, milieuvriendelijke browserextensie, ruimte-invaders-achtig spel en een bankapp voor bedrijven te bouwen. Aan het einde van de serie hebben studenten een solide begrip van webontwikkeling. +> 🎓 Je kunt de eerste paar lessen in dit curriculum volgen als een [Leerpad](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) op Microsoft Learn! -> 🎓 Je kunt de eerste paar lessen van dit curriculum volgen als een [Leerpad](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) op Microsoft Learn! +Door ervoor te zorgen dat de inhoud aansluit bij projecten, wordt het proces boeiender voor studenten en wordt het begrip van concepten versterkt. We hebben ook enkele startlessen in JavaScript-basisprincipes geschreven om concepten te introduceren, gekoppeld aan een video uit de "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" collectie van videotutorials, waarvan sommige auteurs hebben bijgedragen aan dit curriculum. -Door ervoor te zorgen dat de inhoud aansluit bij projecten, wordt het proces boeiender voor studenten en wordt het begrip van concepten vergroot. We hebben ook verschillende startlessen in JavaScript-basisprincipes geschreven om concepten te introduceren, gecombineerd met een video uit de "[Beginnersserie: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" collectie van videotutorials, waarvan sommige auteurs hebben bijgedragen aan dit curriculum. +Daarnaast zorgt een laagdrempelige quiz voorafgaand aan een les ervoor dat de student zich richt op het leren van een onderwerp, terwijl een tweede quiz na de les verdere retentie garandeert. Dit curriculum is ontworpen om flexibel en leuk te zijn en kan in zijn geheel of gedeeltelijk worden gevolgd. De projecten beginnen klein en worden tegen het einde van de 12-weekse cyclus steeds complexer. -Daarnaast zet een laagdrempelige quiz voorafgaand aan een les de student aan tot het leren van een onderwerp, terwijl een tweede quiz na de les zorgt voor verdere retentie. Dit curriculum is ontworpen om flexibel en leuk te zijn en kan in zijn geheel of gedeeltelijk worden gevolgd. De projecten beginnen klein en worden steeds complexer tegen het einde van de 12-weekse cyclus. +Hoewel we bewust hebben vermeden JavaScript-frameworks te introduceren om ons te concentreren op de basisvaardigheden die nodig zijn als webontwikkelaar voordat een framework wordt aangenomen, zou een goede volgende stap na het voltooien van dit curriculum zijn om meer te leren over Node.js via een andere collectie video's: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)". -Hoewel we er bewust voor hebben gekozen om geen JavaScript-frameworks te introduceren om ons te concentreren op de basisvaardigheden die nodig zijn als webontwikkelaar voordat we een framework adopteren, zou een goede volgende stap na het voltooien van dit curriculum zijn om meer te leren over Node.js via een andere collectie video's: "[Beginnersserie: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)". +> Bezoek onze [Gedragscode](CODE_OF_CONDUCT.md) en [Bijdragen](CONTRIBUTING.md) richtlijnen. We verwelkomen je constructieve feedback! -> Bezoek onze [Gedragscode](CODE_OF_CONDUCT.md) en [Bijdragen](CONTRIBUTING.md) richtlijnen. We verwelkomen je constructieve feedback! ## 🧭 Offline toegang -Je kunt deze documentatie offline gebruiken met [Docsify](https://docsify.js.org/#/). Fork deze repository, [installeer Docsify](https://docsify.js.org/#/quickstart) op je lokale machine, en typ vervolgens in de hoofdmap van deze repository `docsify serve`. De website wordt geserveerd op poort 3000 op je localhost: `localhost:3000`. +Je kunt deze documentatie offline uitvoeren met behulp van [Docsify](https://docsify.js.org/#/). Fork deze repo, [installeer Docsify](https://docsify.js.org/#/quickstart) op je lokale machine, en typ vervolgens in de rootmap van deze repo `docsify serve`. De website wordt geserveerd op poort 3000 op je localhost: `localhost:3000`. ## 📘 PDF -Een PDF van alle lessen is te vinden [hier](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf). +Een PDF van alle lessen is te vinden [hier](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf). + ## 🎒 Andere Cursussen -Ons team produceert ook andere cursussen! Bekijk: +Ons team produceert andere cursussen! Bekijk: -### Azure / Edge / MCP / Agents -[![AZD voor Beginners](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst) + +### Azure / Edge / MCP / Agents +[![AZD voor Beginners](https://img.shields.io/badge/AZD%20voor%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst) [![Edge AI voor Beginners](https://img.shields.io/badge/Edge%20AI%20voor%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst) [![MCP voor Beginners](https://img.shields.io/badge/MCP%20voor%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst) [![AI Agents voor Beginners](https://img.shields.io/badge/AI%20Agents%20voor%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst) @@ -237,17 +237,16 @@ Ons team produceert ook andere cursussen! Bekijk: [![Copilot voor AI Samen Programmeren](https://img.shields.io/badge/Copilot%20voor%20AI%20Samen%20Programmeren-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst) [![Copilot voor C#/.NET](https://img.shields.io/badge/Copilot%20voor%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst) [![Copilot Avontuur](https://img.shields.io/badge/Copilot%20Avontuur-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst) - -## Hulp nodig +## Hulp krijgen -Als je vastloopt of vragen hebt over het bouwen van AI-apps, sluit je dan aan bij: +Als je vastloopt of vragen hebt over het bouwen van AI-apps, sluit je dan aan bij medeleerlingen en ervaren ontwikkelaars in discussies over MCP. Het is een ondersteunende community waar vragen welkom zijn en kennis vrij wordt gedeeld. -[![Azure AI Foundry Discord](https://img.shields.io/badge/Discord-Azure_AI_Foundry_Community_Discord-blue?style=for-the-badge&logo=discord&color=5865f2&logoColor=fff)](https://aka.ms/foundry/discord) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) Als je productfeedback hebt of fouten tegenkomt tijdens het bouwen, bezoek dan: -[![Azure AI Foundry Developer Forum](https://img.shields.io/badge/GitHub-Azure_AI_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) +[![Microsoft Foundry Developer Forum](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) ## Licentie @@ -255,5 +254,7 @@ Deze repository is gelicentieerd onder de MIT-licentie. Zie het [LICENSE](../../ --- + **Disclaimer**: -Dit document is vertaald met behulp van de AI-vertalingsservice [Co-op Translator](https://github.com/Azure/co-op-translator). Hoewel we streven naar nauwkeurigheid, dient u zich ervan bewust te zijn dat geautomatiseerde vertalingen fouten of onnauwkeurigheden kunnen bevatten. Het originele document in de oorspronkelijke taal moet worden beschouwd als de gezaghebbende bron. Voor kritieke informatie wordt professionele menselijke vertaling aanbevolen. Wij zijn niet aansprakelijk voor misverstanden of verkeerde interpretaties die voortvloeien uit het gebruik van deze vertaling. \ No newline at end of file +Dit document is vertaald met behulp van de AI-vertalingsservice [Co-op Translator](https://github.com/Azure/co-op-translator). Hoewel we streven naar nauwkeurigheid, dient u zich ervan bewust te zijn dat geautomatiseerde vertalingen fouten of onnauwkeurigheden kunnen bevatten. Het originele document in de oorspronkelijke taal moet worden beschouwd als de gezaghebbende bron. Voor kritieke informatie wordt professionele menselijke vertaling aanbevolen. Wij zijn niet aansprakelijk voor misverstanden of verkeerde interpretaties die voortvloeien uit het gebruik van deze vertaling. + \ No newline at end of file diff --git a/translations/ru/1-getting-started-lessons/2-github-basics/README.md b/translations/ru/1-getting-started-lessons/2-github-basics/README.md index 2a95e0bc..5c5404f8 100644 --- a/translations/ru/1-getting-started-lessons/2-github-basics/README.md +++ b/translations/ru/1-getting-started-lessons/2-github-basics/README.md @@ -1,8 +1,8 @@ B{Is it a Git Repository?} - B -->|No| C[git init] - B -->|Yes| D[Make Changes] + A[📁 Ваши файлы проекта] --> B{Это Git репозиторий?} + B -->|Нет| C[git init] + B -->|Да| D[Внесите изменения] C --> D D --> E[git add .] - E --> F["git commit -m 'message'"] + E --> F["git commit -m 'сообщение'"] F --> G[git push] - G --> H[🌟 Code on GitHub!] + G --> H[🌟 Код на GitHub!] - H --> I{Want to collaborate?} - I -->|Yes| J[Fork & Clone] - I -->|No| D - J --> K[Create Branch] - K --> L[Make Changes] + H --> I{Хотите сотрудничать?} + I -->|Да| J[Fork & Clone] + I -->|Нет| D + J --> K[Создайте ветку] + K --> L[Внесите изменения] L --> M[Pull Request] - M --> N[🎉 Contributing!] + M --> N[🎉 Вклад!] style A fill:#fff59d style H fill:#c8e6c9 style N fill:#ff4081,color:#fff ``` - ### Задача: Создай свой первый репозиторий! -> 🎯 **Твоя миссия (и я так рад за тебя!)**: Мы вместе создадим твой первый репозиторий на GitHub! К тому времени, как мы закончим, у тебя будет свой маленький уголок в интернете, где будет жить твой код, и ты сделаешь свой первый "коммит" (это разработческое слово, означающее сохранение твоей работы очень умным способом). +> 🎯 **Твоя миссия (и я так рад за тебя!)**: Мы вместе создадим твой первый репозиторий на GitHub! К тому моменту, как мы закончим, у тебя будет свой уголок в интернете, где будет жить твой код, и ты сделаешь свой первый "коммит" (это разработческое слово для сохранения работы умным способом). > > Это действительно особенный момент – ты официально присоединяешься к глобальному сообществу разработчиков! Я до сих пор помню восторг от создания своего первого репозитория и мысль: "Вау, я действительно это делаю!" -Давай пройдем через это приключение вместе, шаг за шагом. Не торопись с каждым этапом – здесь нет приза за скорость, и я обещаю, что каждый шаг будет понятен. Помни, каждый разработчик, которым ты восхищаешься, когда-то сидел именно там, где ты сейчас, готовясь создать свой первый репозиторий. Как это круто? +Давай пройдем через это приключение вместе, шаг за шагом. Не торопись с каждым этапом – здесь нет приза за скорость, и я обещаю, что каждый шаг будет понятен. Помни, каждый кодер, которым ты восхищаешься, когда-то сидел именно там, где ты сейчас, готовясь создать свой первый репозиторий. Как это круто? > Посмотри видео > @@ -172,8 +170,8 @@ flowchart TD 1. Дай своему репозиторию имя – выбери что-то значимое для тебя! 1. Добавь описание, если хочешь (это поможет другим понять, о чем твой проект) 1. Реши, хочешь ли ты сделать его публичным (все смогут его видеть) или приватным (только для тебя) - 1. Рекомендую поставить галочку, чтобы добавить файл README – это как главная страница твоего проекта - 1. Нажми **Create repository** и отпразднуй – ты только что создал свой первый репозиторий! 🎉 + 1. Я рекомендую поставить галочку, чтобы добавить файл README – это как главная страница твоего проекта + 1. Нажми **Create repository** и празднуй – ты только что создал свой первый репозиторий! 🎉 2. **Перейди в папку своего проекта**. Теперь откроем твой терминал (не переживай, он не так страшен, как выглядит!). Нам нужно указать компьютеру, где находятся файлы твоего проекта. Введи эту команду: @@ -182,7 +180,7 @@ flowchart TD ``` **Что мы здесь делаем:** - - Мы говорим компьютеру: "Эй, открой папку моего проекта" + - Мы говорим компьютеру: "Эй, отведи меня в папку моего проекта" - Это как открыть определенную папку на рабочем столе, только мы делаем это текстовыми командами - Замени `[name of your folder]` на фактическое имя папки твоего проекта @@ -194,8 +192,8 @@ flowchart TD **Вот что только что произошло (довольно круто!):** - Git создал скрытую папку `.git` в твоем проекте – ты ее не увидишь, но она там! - - Твоя обычная папка теперь стала "репозиторием", который может отслеживать каждое изменение - - Представь, что ты дал своей папке суперспособности запоминать все + - Твоя обычная папка теперь "репозиторий", который может отслеживать каждое изменение, которое ты делаешь + - Представь это как придание твоей папке суперспособностей, чтобы запоминать все 4. **Проверь, что происходит**. Давай посмотрим, что Git думает о твоем проекте прямо сейчас: @@ -219,9 +217,9 @@ flowchart TD **Не паникуй! Вот что это значит:** - Файлы в **красном** – это файлы, которые изменены, но еще не готовы к сохранению - Файлы в **зеленом** (когда ты их увидишь) готовы к сохранению - - Git помогает, говоря тебе, что ты можешь сделать дальше + - Git помогает, говоря тебе, что именно ты можешь сделать дальше - > 💡 **Совет профессионала**: Команда `git status` – твой лучший друг! Используй ее всякий раз, когда ты запутался в происходящем. Это как спросить Git: "Эй, какая сейчас ситуация?" + > 💡 **Совет профессионала**: Команда `git status` – твой лучший друг! Используй ее всякий раз, когда ты не уверен, что происходит. Это как спросить Git: "Эй, какая сейчас ситуация?" 5. **Подготовь свои файлы к сохранению** (это называется "стейджинг"): @@ -241,17 +239,17 @@ flowchart TD ``` **Почему ты можешь захотеть сделать это?** - - Иногда ты хочешь сохранить связанные изменения вместе + - Иногда ты хочешь сохранять связанные изменения вместе - Это помогает организовать твою работу в логические блоки - - Упрощает понимание того, что изменилось и когда + - Делает проще понять, что изменилось и когда **Передумал?** Не переживай! Ты можешь убрать файлы из стейджа вот так: ```bash - # Unstage everything + # Убрать все из индекса git reset - # Unstage just one file + # Убрать из индекса только один файл git reset [file name] ``` @@ -267,50 +265,51 @@ flowchart TD **Вот что только что произошло:** - Git сделал "снимок" всех твоих стейджированных файлов в этот момент - - Твое сообщение о коммите "first commit" объясняет, о чем эта точка сохранения - - Git присвоил этому снимку уникальный ID, чтобы ты всегда мог его найти + - Твое сообщение коммита "first commit" объясняет, о чем эта точка сохранения + - Git дал этому снимку уникальный ID, чтобы ты всегда мог его найти - Ты официально начал отслеживать историю своего проекта! - > 💡 **Будущие сообщения о коммитах**: Для следующих коммитов будь более описательным! Вместо "обновил что-то" попробуй "Добавил контактную форму на главную страницу" или "Исправил баг в меню навигации". Твое будущее "я" скажет тебе спасибо! + > 💡 **Будущие сообщения коммитов**: Для следующих коммитов будь более описательным! Вместо "обновил что-то" попробуй "Добавил контактную форму на главную страницу" или "Исправил баг в меню навигации". Твое будущее "я" скажет тебе спасибо! 7. **Подключи свой локальный проект к GitHub**. Сейчас твой проект существует только на твоем компьютере. Давай подключим его к твоему репозиторию на GitHub, чтобы ты мог поделиться им с миром! - Сначала зайди на страницу своего репозитория на GitHub и скопируй URL. Затем вернись сюда и введи: + Сначала перейди на страницу своего репозитория на GitHub и скопируй URL. Затем вернись сюда и введи: ```bash git remote add origin https://github.com/username/repository_name.git ``` (Замени этот URL на фактический URL твоего репозитория!) -**Что мы только что сделали:** -- Мы создали связь между вашим локальным проектом и репозиторием на GitHub. -- "Origin" — это просто прозвище для вашего репозитория на GitHub, как добавление контакта в телефон. -- Теперь ваш локальный Git знает, куда отправлять ваш код, когда вы готовы его поделиться. -💡 **Проще способ**: Если у вас установлен GitHub CLI, вы можете сделать это одной командой: + **Что мы только что сделали:** + - Мы создали связь между вашим локальным проектом и репозиторием на GitHub. + - "Origin" — это просто прозвище для вашего репозитория на GitHub, как добавление контакта в телефон. + - Теперь ваш локальный Git знает, куда отправлять ваш код, когда вы будете готовы поделиться им. + + 💡 **Проще способ**: Если у вас установлен GitHub CLI, вы можете сделать это одной командой: ```bash gh repo create my-repo --public --push --source=. ``` -8. **Отправьте ваш код на GitHub** (важный момент!): +8. **Отправьте ваш код на GitHub** (вот он, важный момент!): ```bash git push -u origin main ``` -**🚀 Вот оно! Вы загружаете ваш код на GitHub!** - -**Что происходит:** -- Ваши коммиты отправляются с вашего компьютера на GitHub. -- Флаг `-u` устанавливает постоянное соединение, чтобы в будущем было проще делать push. -- "main" — это название вашей основной ветки (как главная папка). -- После этого вы можете просто вводить `git push` для будущих загрузок! + **🚀 Это оно! Вы загружаете ваш код на GitHub!** + + **Что происходит:** + - Ваши коммиты отправляются с вашего компьютера на GitHub. + - Флаг `-u` устанавливает постоянное соединение, чтобы в будущем было проще отправлять изменения. + - "main" — это название вашей основной ветки (как главная папка). + - После этого для будущих загрузок достаточно просто ввести `git push`! -💡 **Короткая заметка**: Если ваша ветка называется иначе (например, "master"), используйте это название. Вы можете проверить с помощью `git branch --show-current`. + 💡 **Быстрая заметка**: Если ваша ветка называется иначе (например, "master"), используйте это название. Вы можете проверить это с помощью команды `git branch --show-current`. -9. **Ваш новый ежедневный ритм кодинга** (вот где начинается зависимость!): +9. **Ваш новый ежедневный ритм кодинга** (вот где это становится увлекательным!): -Теперь, когда вы вносите изменения в ваш проект, у вас есть простой трехшаговый процесс: + С этого момента, когда вы вносите изменения в проект, у вас есть простой трехшаговый процесс: ```bash git add . @@ -318,101 +317,100 @@ flowchart TD git push ``` -**Это становится вашим сердцебиением кодинга:** -- Внесите крутые изменения в ваш код ✨ -- Добавьте их с помощью `git add` ("Эй, Git, обрати внимание на эти изменения!") -- Сохраните их с помощью `git commit` и описательного сообщения (будущий вы скажет вам спасибо!) -- Поделитесь ими с миром, используя `git push` 🚀 -- Повторяйте снова и снова — серьезно, это становится таким же естественным, как дыхание! + **Это становится вашим сердцебиением кодинга:** + - Внесите потрясающие изменения в ваш код ✨ + - Добавьте их с помощью `git add` ("Эй, Git, обрати внимание на эти изменения!") + - Сохраните их с помощью `git commit` и описательного сообщения (будущий вы скажет вам спасибо!) + - Поделитесь ими с миром, используя `git push` 🚀 + - Повторяйте снова и снова – серьезно, это становится таким же естественным, как дыхание! -Мне нравится этот рабочий процесс, потому что он похож на создание множества точек сохранения в видеоигре. Сделали изменение, которое вам нравится? Закоммитьте его! Хотите попробовать что-то рискованное? Без проблем — вы всегда можете вернуться к последнему коммиту, если что-то пойдет не так! + Мне нравится этот рабочий процесс, потому что он похож на создание множества точек сохранения в видеоигре. Сделали изменение, которое вам нравится? Закоммитьте его! Хотите попробовать что-то рискованное? Без проблем – вы всегда можете вернуться к последнему коммиту, если что-то пойдет не так! -> 💡 **Совет**: Возможно, вам также стоит использовать файл `.gitignore`, чтобы предотвратить появление файлов, которые вы не хотите отслеживать, на GitHub — например, файл с заметками, который вы храните в той же папке, но который не должен быть в публичном репозитории. Вы можете найти шаблоны для файлов `.gitignore` на [шаблоны .gitignore](https://github.com/github/gitignore) или создать его с помощью [gitignore.io](https://www.toptal.com/developers/gitignore). + > 💡 **Совет**: Возможно, вы захотите использовать файл `.gitignore`, чтобы предотвратить появление на GitHub файлов, которые вы не хотите отслеживать, например, файла с заметками, который вы храните в той же папке, но который не должен быть в публичном репозитории. Вы можете найти шаблоны для файлов `.gitignore` на странице [.gitignore templates](https://github.com/github/gitignore) или создать его с помощью [gitignore.io](https://www.toptal.com/developers/gitignore). ### 🧠 **Первый репозиторий: как это было?** **Возьмите минуту, чтобы отпраздновать и подумать:** -- Каково было видеть ваш код на GitHub впервые? -- Какой шаг показался самым запутанным, а какой — удивительно простым? +- Каково было увидеть ваш код на GitHub впервые? +- Какой шаг показался самым запутанным, а какой – неожиданно простым? - Можете ли вы объяснить разницу между `git add`, `git commit` и `git push` своими словами? ```mermaid stateDiagram-v2 - [*] --> LocalFiles: Create project + [*] --> LocalFiles: Создать проект LocalFiles --> Staged: git add . Staged --> Committed: git commit Committed --> GitHub: git push - GitHub --> [*]: Success! 🎉 + GitHub --> [*]: Успех! 🎉 note right of Staged - Files ready to save + Файлы готовы к сохранению end note note right of Committed - Snapshot created + Снимок создан end note ``` +> **Помните**: Даже опытные разработчики иногда забывают точные команды. Чтобы этот рабочий процесс стал автоматическим, требуется практика – вы на правильном пути! -> **Помните**: Даже опытные разработчики иногда забывают точные команды. Чтобы этот рабочий процесс стал автоматическим, требуется практика — вы отлично справляетесь! - -#### Современные рабочие процессы Git +#### Современные рабочие процессы с Git Рассмотрите возможность внедрения этих современных практик: -- **Conventional Commits**: Используйте стандартизированный формат сообщений коммитов, например `feat:`, `fix:`, `docs:` и т.д. Узнайте больше на [conventionalcommits.org](https://www.conventionalcommits.org/) -- **Атомарные коммиты**: Пусть каждый коммит представляет собой одно логическое изменение. +- **Conventional Commits**: Используйте стандартизированный формат сообщений коммитов, например, `feat:`, `fix:`, `docs:` и т.д. Подробнее на [conventionalcommits.org](https://www.conventionalcommits.org/) +- **Атомарные коммиты**: Каждый коммит должен представлять собой одно логическое изменение. - **Частые коммиты**: Делайте коммиты часто с описательными сообщениями, а не редкие и крупные. #### Сообщения коммитов -Отличная строка темы коммита Git завершает следующее предложение: -Если применить, этот коммит <ваша строка темы здесь>. +Отличная строка темы коммита завершает следующее предложение: +Если применить, этот коммит <ваша строка темы здесь> -Для темы используйте повелительное наклонение в настоящем времени: "изменить", а не "изменил" или "изменяет". Как и в теме, в теле (опционально) также используйте повелительное наклонение в настоящем времени. В теле следует указать мотивацию изменения и сравнить это с предыдущим поведением. Вы объясняете `почему`, а не `как`. +Для темы используйте повелительное наклонение в настоящем времени: "изменить", а не "изменил" или "изменяет". +Как и в теме, в теле (опционально) также используйте повелительное наклонение в настоящем времени. Тело должно включать мотивацию для изменения и контрастировать это с предыдущим поведением. Вы объясняете `почему`, а не `как`. -✅ Потратьте несколько минут, чтобы поискать на GitHub. Можете ли вы найти действительно отличное сообщение коммита? А минимальное? Какую информацию, по вашему мнению, наиболее важно и полезно передать в сообщении коммита? +✅ Потратьте несколько минут, чтобы поискать на GitHub. Можете ли вы найти действительно отличное сообщение коммита? А минимальное? Какую информацию, по вашему мнению, важно и полезно передать в сообщении коммита? ## Работа с другими (самая интересная часть!) -Держитесь крепче, потому что СЕЙЧАС GitHub становится абсолютно волшебным! 🪄 Вы освоили управление своим кодом, а теперь мы погружаемся в мою абсолютную любимую часть — сотрудничество с удивительными людьми со всего мира. +Держитесь крепче, потому что ЗДЕСЬ GitHub становится абсолютно волшебным! 🪄 Вы освоили управление своим кодом, а теперь мы погружаемся в мою абсолютную любимую часть – сотрудничество с удивительными людьми со всего мира. -Представьте: вы просыпаетесь завтра и видите, что кто-то в Токио улучшил ваш код, пока вы спали. Затем кто-то в Берлине исправляет баг, над которым вы застряли. К обеду разработчик из Сан-Паулу добавляет функцию, о которой вы даже не думали. Это не научная фантастика — это просто вторник во вселенной GitHub! +Представьте: вы просыпаетесь завтра и видите, что кто-то в Токио улучшил ваш код, пока вы спали. Затем кто-то в Берлине исправляет баг, с которым вы застряли. К обеду разработчик из Сан-Паулу добавляет функцию, о которой вы даже не думали. Это не научная фантастика – это просто вторник во вселенной GitHub! -Что меня действительно вдохновляет, так это то, что навыки сотрудничества, которые вы собираетесь освоить, — это ТОЧНО те же рабочие процессы, которые команды в Google, Microsoft и ваших любимых стартапах используют каждый день. Вы не просто изучаете крутой инструмент — вы изучаете секретный язык, который позволяет всему миру программного обеспечения работать вместе. +Что меня действительно вдохновляет, так это то, что навыки сотрудничества, которые вы собираетесь освоить, – это ТОЧНО такие же рабочие процессы, которые ежедневно используют команды в Google, Microsoft и ваших любимых стартапах. Вы не просто изучаете крутой инструмент – вы изучаете секретный язык, который позволяет всему миру программного обеспечения работать вместе. -Серьезно, как только вы испытаете восторг от того, что кто-то объединяет ваш первый pull request, вы поймете, почему разработчики так увлечены open source. Это как быть частью самого большого, самого творческого командного проекта в мире! +Серьезно, как только вы испытаете восторг от того, что кто-то объединяет ваш первый pull request, вы поймете, почему разработчики так увлечены open source. Это как быть частью самого большого и креативного командного проекта в мире! > Посмотрите видео > -> [![Видео о Git и GitHub](https://img.youtube.com/vi/bFCM-PC3cu8/0.jpg)](https://www.youtube.com/watch?v=bFCM-PC3cu8) +> [![Видео об основах Git и GitHub](https://img.youtube.com/vi/bFCM-PC3cu8/0.jpg)](https://www.youtube.com/watch?v=bFCM-PC3cu8) -Основная причина размещения вещей на GitHub — сделать возможным сотрудничество с другими разработчиками. +Основная причина размещения проектов на GitHub – это возможность сотрудничать с другими разработчиками. ```mermaid flowchart LR - A[🔍 Find Project] --> B[🍴 Fork Repository] - B --> C[📥 Clone to Local] - C --> D[🌿 Create Branch] - D --> E[✏️ Make Changes] - E --> F[💾 Commit Changes] - F --> G[📤 Push Branch] - G --> H[🔄 Create Pull Request] - H --> I{Maintainer Review} - I -->|✅ Approved| J[🎉 Merge!] - I -->|❓ Changes Requested| K[📝 Make Updates] + A[🔍 Найти проект] --> B[🍴 Форк репозитория] + B --> C[📥 Клонировать локально] + C --> D[🌿 Создать ветку] + D --> E[✏️ Внести изменения] + E --> F[💾 Зафиксировать изменения] + F --> G[📤 Отправить ветку] + G --> H[🔄 Создать запрос на слияние] + H --> I{Рецензия мейнтейнера} + I -->|✅ Одобрено| J[🎉 Слияние!] + I -->|❓ Запрошены изменения| K[📝 Внести правки] K --> F - J --> L[🧹 Clean Up Branches] + J --> L[🧹 Удалить ветки] style A fill:#e3f2fd style J fill:#e8f5e8 style L fill:#fff3e0 ``` +В вашем репозитории перейдите в `Insights > Community`, чтобы увидеть, как ваш проект соответствует рекомендованным стандартам сообщества. -В вашем репозитории перейдите в `Insights > Community`, чтобы увидеть, как ваш проект сравнивается с рекомендованными стандартами сообщества. - -Хотите сделать ваш репозиторий профессиональным и гостеприимным? Перейдите в ваш репозиторий и нажмите `Insights > Community`. Эта крутая функция показывает, как ваш проект сравнивается с тем, что сообщество GitHub считает "хорошими практиками репозитория". +Хотите, чтобы ваш репозиторий выглядел профессионально и привлекательно? Зайдите в ваш репозиторий и нажмите на `Insights > Community`. Эта классная функция показывает, как ваш проект соответствует тому, что сообщество GitHub считает "хорошими практиками репозитория". -> 🎯 **Сделайте ваш проект ярким**: Хорошо организованный репозиторий с качественной документацией — это как чистая, гостеприимная витрина. Это показывает людям, что вы заботитесь о своей работе, и заставляет других хотеть внести свой вклад! +> 🎯 **Сделайте ваш проект ярким**: Хорошо организованный репозиторий с качественной документацией – это как чистая, гостеприимная витрина. Это показывает людям, что вы заботитесь о своей работе, и побуждает других захотеть внести свой вклад! **Что делает репозиторий отличным:** @@ -420,44 +418,44 @@ flowchart LR |-------------|-------------------|---------------------| | **Описание** | Первое впечатление имеет значение! | Люди сразу понимают, что делает ваш проект | | **README** | Главная страница вашего проекта | Как дружелюбный гид для новых посетителей | -| **Руководство по внесению изменений** | Показывает, что вы приветствуете помощь | Люди точно знают, как они могут вам помочь | +| **Руководство по вкладу** | Показывает, что вы приветствуете помощь | Люди знают, как именно они могут помочь вам | | **Кодекс поведения** | Создает дружелюбное пространство | Все чувствуют себя желанными участниками | | **Лицензия** | Юридическая ясность | Другие знают, как они могут использовать ваш код | | **Политика безопасности** | Показывает вашу ответственность | Демонстрирует профессиональные практики | -> 💡 **Профессиональный совет**: GitHub предоставляет шаблоны для всех этих файлов. При создании нового репозитория отметьте галочки, чтобы автоматически сгенерировать эти файлы. +> 💡 **Совет профессионала**: GitHub предоставляет шаблоны для всех этих файлов. При создании нового репозитория отметьте галочки, чтобы автоматически сгенерировать эти файлы. **Современные функции GitHub для изучения:** 🤖 **Автоматизация и CI/CD:** -- **GitHub Actions** для автоматического тестирования и развертывания. -- **Dependabot** для автоматического обновления зависимостей. +- **GitHub Actions** для автоматического тестирования и развертывания +- **Dependabot** для автоматического обновления зависимостей 💬 **Сообщество и управление проектами:** -- **GitHub Discussions** для обсуждений сообщества вне задач. -- **GitHub Projects** для управления проектами в стиле канбан. -- **Правила защиты веток** для обеспечения стандартов качества кода. +- **GitHub Discussions** для обсуждений сообщества вне рамок задач +- **GitHub Projects** для управления проектами в стиле канбан +- **Правила защиты веток** для обеспечения стандартов качества кода -Все эти ресурсы помогут новым участникам команды. И именно на такие вещи новые участники обращают внимание перед тем, как взглянуть на ваш код, чтобы понять, подходит ли ваш проект для их времени. +Все эти ресурсы помогут в адаптации новых членов команды. И именно на такие вещи обычно обращают внимание новые участники, прежде чем даже взглянуть на ваш код, чтобы понять, стоит ли им тратить свое время на ваш проект. -✅ Файлы README, хотя их подготовка занимает время, часто игнорируются занятыми мейнтейнерами. Можете ли вы найти пример особенно описательного README? Примечание: есть [инструменты для создания хороших README](https://www.makeareadme.com/), которые вам могут понравиться. +✅ README-файлы, хотя их подготовка занимает время, часто игнорируются занятыми мейнтейнерами. Можете ли вы найти пример особенно описательного README? Примечание: существуют [инструменты для создания хороших README](https://www.makeareadme.com/), которые вам могут понравиться. -### Задача: Объедините код +### Задача: Объедините немного кода -Документы для внесения изменений помогают людям вносить вклад в проект. Они объясняют, какие типы вкладов вы ищете и как работает процесс. Участники должны пройти серию шагов, чтобы внести вклад в ваш репозиторий на GitHub: +Документация для участников помогает людям вносить вклад в проект. Она объясняет, какие типы вкладов вы ищете и как работает процесс. Участникам нужно будет пройти несколько шагов, чтобы внести вклад в ваш репозиторий на GitHub: -1. **Форк вашего репозитория**. Вы, вероятно, захотите, чтобы люди _форкали_ ваш проект. Форк означает создание копии вашего репозитория в их профиле на GitHub. -1. **Клонирование**. После этого они клонируют проект на свою локальную машину. +1. **Форк репозитория**. Скорее всего, вы захотите, чтобы люди _форкали_ ваш проект. Форк – это создание копии вашего репозитория в их профиле на GitHub. +1. **Клонирование**. После этого они клонируют проект на свой локальный компьютер. 1. **Создание ветки**. Вы захотите попросить их создать _ветку_ для своей работы. -1. **Сосредоточение изменений на одной области**. Попросите участников сосредоточить свои изменения на одной вещи за раз — так шансы, что вы сможете _объединить_ их работу, выше. Представьте, что они исправляют баг, добавляют новую функцию и обновляют несколько тестов — что, если вы хотите или можете реализовать только 2 из 3 или 1 из 3 изменений? +1. **Сфокусируйтесь на одной области**. Попросите участников сосредоточить свои изменения на чем-то одном – так шансы, что вы сможете _объединить_ их работу, будут выше. Представьте, что они исправляют баг, добавляют новую функцию и обновляют несколько тестов – что, если вы хотите или можете реализовать только 2 из 3 или 1 из 3 изменений? -✅ Представьте ситуацию, где ветки особенно важны для написания и выпуска хорошего кода. Какие случаи использования вы можете придумать? +✅ Представьте ситуацию, где ветки особенно важны для написания и выпуска качественного кода. Какие случаи использования вы можете придумать? -> Заметьте, будьте тем изменением, которое хотите видеть в мире, и создавайте ветки для своей работы тоже. Любые коммиты, которые вы делаете, будут сделаны в ветке, в которой вы сейчас "находитесь". Используйте `git status`, чтобы увидеть, какая это ветка. +> Заметьте, будьте тем изменением, которое вы хотите видеть в мире, и создавайте ветки для своей работы тоже. Любые коммиты, которые вы делаете, будут сделаны в ветке, в которой вы сейчас находитесь. Используйте `git status`, чтобы увидеть, в какой ветке вы находитесь. -Давайте пройдемся по рабочему процессу участника. Предположим, участник уже _форкал_ и _клонировал_ репозиторий, так что у него есть готовый Git-репозиторий на локальной машине: +Давайте пройдемся по рабочему процессу участника. Предположим, участник уже _форкнул_ и _клонировал_ репозиторий, так что у него есть готовый к работе Git-репозиторий на локальной машине: -1. **Создание ветки**. Используйте команду `git branch`, чтобы создать ветку, которая будет содержать изменения, которые они хотят внести: +1. **Создайте ветку**. Используйте команду `git branch`, чтобы создать ветку, которая будет содержать изменения, которые они хотят внести: ```bash git branch [branch-name] @@ -468,15 +466,15 @@ flowchart LR git switch -c [branch-name] ``` -1. **Переключение на рабочую ветку**. Переключитесь на указанную ветку и обновите рабочую директорию с помощью `git switch`: +1. **Переключитесь на рабочую ветку**. Переключитесь на указанную ветку и обновите рабочую директорию с помощью `git switch`: ```bash git switch [branch-name] ``` - > 💡 **Современная заметка**: `git switch` — это современная замена `git checkout` при смене веток. Она более понятна и безопасна для новичков. + > 💡 **Современная заметка**: `git switch` – это современная замена `git checkout` при смене веток. Она более понятна и безопасна для новичков. -1. **Работа**. На этом этапе вы хотите внести свои изменения. Не забудьте сообщить Git об этом с помощью следующих команд: +1. **Работайте**. На этом этапе вы хотите внести свои изменения. Не забудьте сообщить об этом Git с помощью следующих команд: ```bash git add . @@ -485,7 +483,7 @@ flowchart LR > ⚠️ **Качество сообщения коммита**: Убедитесь, что вы дали вашему коммиту хорошее название, как для себя, так и для мейнтейнера репозитория, которому вы помогаете. Будьте конкретны в том, что вы изменили! -1. **Объединение вашей работы с веткой `main`**. В какой-то момент вы завершаете работу и хотите объединить ее с веткой `main`. Ветка `main` могла измениться за это время, поэтому сначала убедитесь, что вы обновили ее до последней версии с помощью следующих команд: +1. **Объедините вашу работу с веткой `main`**. В какой-то момент вы завершите работу и захотите объединить свои изменения с веткой `main`. Ветка `main` могла измениться за это время, поэтому сначала обновите ее до последней версии с помощью следующих команд: ```bash git switch main @@ -499,7 +497,7 @@ flowchart LR git merge main ``` - Команда `git merge main` объединит все изменения из `main` в вашу ветку. Надеемся, вы сможете просто продолжить. Если нет, VS Code покажет вам, где Git _запутался_, и вы просто измените затронутые файлы, чтобы указать, какой контент наиболее точен. + Команда `git merge main` объединит все изменения из `main` в вашу ветку. Надеемся, вы сможете просто продолжить. Если нет, VS Code покажет вам, где Git _запутался_, и вы просто измените затронутые файлы, чтобы указать, какое содержимое наиболее точное. 💡 **Современная альтернатива**: Рассмотрите использование `git rebase` для более чистой истории: ```bash @@ -507,41 +505,40 @@ flowchart LR ``` Это воспроизводит ваши коммиты поверх последней ветки main, создавая линейную историю. -1. **Отправьте вашу работу на GitHub**. Отправка вашей работы на GitHub означает две вещи. Push вашей ветки в ваш репозиторий и затем открытие PR, Pull Request. +1. **Отправьте вашу работу на GitHub**. Отправка вашей работы на GitHub означает две вещи: отправку вашей ветки в ваш репозиторий и затем открытие PR (Pull Request). ```bash git push --set-upstream origin [branch-name] ``` - Вышеприведенная команда создает ветку в вашем форкнутом репозитории. + Команда выше создает ветку в вашем форкнутом репозитории. ### 🤝 **Проверка навыков сотрудничества: готовы работать с другими?** **Давайте посмотрим, как вы чувствуете себя в отношении сотрудничества:** -- Теперь идея форков и pull requests понятна вам? -- Что вы хотите больше практиковать в работе с ветками? +- Понятна ли вам теперь идея форков и pull request? +- Что из работы с ветками вы хотите попрактиковать больше всего? - Насколько комфортно вы чувствуете себя, внося вклад в чужой проект? ```mermaid mindmap - root((Git Collaboration)) - Branching - Feature branches - Bug fix branches - Experimental work - Pull Requests - Code review - Discussion - Testing - Best Practices - Clear commit messages - Small focused changes - Good documentation + root((Совместная работа с Git)) + Ветвление + Ветви для новых функций + Ветви для исправления ошибок + Экспериментальная работа + Запросы на слияние + Ревью кода + Обсуждение + Тестирование + Лучшие практики + Понятные сообщения коммитов + Небольшие целенаправленные изменения + Хорошая документация ``` +> **Уверенность**: Каждый разработчик, которым вы восхищаетесь, когда-то нервничал из-за своего первого pull request. Сообщество GitHub невероятно дружелюбно к новичкам! -> **Укрепление уверенности**: Каждый разработчик, которым вы восхищаетесь, когда-то нервничал из-за своего первого pull request. Сообщество GitHub невероятно приветливо к новичкам! - -1. **Откройте PR**. Далее вы хотите открыть PR. Вы делаете это, перейдя в форкнутый репозиторий на GitHub. Вы увидите указание на GitHub, где вас спросят, хотите ли вы создать новый PR, вы нажимаете на это, и вас перенаправляют в интерфейс, где вы можете изменить заголовок сообщения коммита, дать ему более подходящее описание. Теперь мейнтейнер репозитория, который вы форкали, увидит этот PR и _надеемся_ оценит и _объединит_ ваш PR. Теперь вы участник, ура :) +1. **Откройте PR**. Далее вы захотите открыть PR. Для этого перейдите в форкнутый репозиторий на GitHub. Вы увидите уведомление, предлагающее создать новый PR, нажмите на него, и вы попадете в интерфейс, где сможете изменить заголовок сообщения коммита, дать ему более подходящее описание. Теперь мейнтейнер репозитория, который вы форкнули, увидит этот PR и, _надеемся_, оценит и _объединит_ ваш PR. Теперь вы – участник, ура :) 💡 **Современный совет**: Вы также можете создавать PR с помощью GitHub CLI: ```bash @@ -560,53 +557,52 @@ mindmap git branch -d [branch-name] ``` - Затем перейдите на страницу форкнутого репозитория на GitHub и удалите удалённую ветку, которую вы только что туда отправили. + Затем перейдите на страницу форкнутого репозитория на GitHub и удалите удалённую ветку, которую вы только что отправили. -`Pull request` может показаться странным термином, ведь на самом деле вы хотите отправить свои изменения в проект. Но владелец проекта или основная команда должны рассмотреть ваши изменения перед их слиянием с основной веткой проекта, так что на самом деле вы запрашиваете решение о внесении изменений у владельца проекта. +`Pull request` может показаться странным термином, ведь на самом деле вы хотите отправить свои изменения в проект. Но владелец проекта или основная команда должны рассмотреть ваши изменения перед их слиянием с "основной" веткой проекта, так что вы фактически запрашиваете решение о внесении изменений у владельца. -Pull request — это место, где можно сравнить и обсудить изменения, внесённые в ветку, с помощью обзоров, комментариев, интегрированных тестов и других инструментов. Хороший pull request следует примерно тем же правилам, что и сообщение коммита. Вы можете добавить ссылку на задачу в трекере задач, если ваша работа, например, решает эту задачу. Это делается с помощью символа `#`, за которым следует номер вашей задачи. Например, `#97`. +Pull request — это место, где можно сравнить и обсудить изменения, внесённые в ветку, с помощью обзоров, комментариев, интегрированных тестов и других инструментов. Хороший pull request следует примерно тем же правилам, что и сообщение коммита. Вы можете добавить ссылку на задачу в трекере задач, если ваша работа, например, исправляет проблему. Это делается с помощью `#`, за которым следует номер вашей задачи. Например, `#97`. -🤞Держим кулачки, чтобы все проверки прошли успешно и владелец(ы) проекта слили ваши изменения в проект🤞 +🤞Держим кулачки, чтобы все проверки прошли успешно и владелец проекта(ов) объединил ваши изменения с проектом🤞 Обновите текущую локальную рабочую ветку, добавив все новые коммиты из соответствующей удалённой ветки на GitHub: `git pull` -## Вклад в Open Source (Ваш шанс внести свой вклад!) +## Вклад в Open Source (Ваш шанс внести изменения!) -Готовы к чему-то, что вас по-настоящему удивит? 🤯 Давайте поговорим о вкладе в проекты с открытым исходным кодом – у меня мурашки по коже от мысли о том, что я могу поделиться этим с вами! +Готовы к чему-то, что вас абсолютно поразит? 🤯 Давайте поговорим о вкладе в проекты с открытым исходным кодом – у меня мурашки от мысли поделиться этим с вами! -Это ваш шанс стать частью чего-то действительно невероятного. Представьте, что вы улучшаете инструменты, которыми ежедневно пользуются миллионы разработчиков, или исправляете ошибку в приложении, которое любят ваши друзья. Это не просто мечта – это то, что представляет собой вклад в открытый исходный код! +Это ваш шанс стать частью чего-то по-настоящему удивительного. Представьте, что вы улучшаете инструменты, которыми ежедневно пользуются миллионы разработчиков, или исправляете ошибку в приложении, которое любят ваши друзья. Это не просто мечта – это то, что означает вклад в open source! -Вот что вызывает у меня восторг каждый раз, когда я думаю об этом: каждый инструмент, с которым вы учитесь работать – ваш редактор кода, фреймворки, которые мы будем изучать, даже браузер, в котором вы читаете это – начался с того, что кто-то, точно такой же, как вы, сделал свой первый вклад. Тот гениальный разработчик, который создал ваше любимое расширение для VS Code? Когда-то он был новичком, который с дрожащими руками нажимал "создать pull request", как вы собираетесь сделать. +Вот что вызывает у меня восторг каждый раз, когда я думаю об этом: каждый инструмент, с которым вы учитесь работать – ваш редактор кода, фреймворки, которые мы будем изучать, даже браузер, в котором вы читаете это – начался с того, что кто-то, точно такой же, как вы, сделал свой первый вклад. Тот гениальный разработчик, который создал ваше любимое расширение для VS Code? Когда-то он был новичком, нажимая "создать pull request" с дрожащими руками, точно так же, как вы собираетесь сделать. -И вот что самое прекрасное: сообщество open source – это как самый большой групповой объятие в интернете. Большинство проектов активно ищут новичков и имеют задачи с тегом "good first issue", специально предназначенные для таких, как вы! Владельцы проектов искренне радуются, когда видят новых участников, потому что они помнят свои первые шаги. +И вот самая красивая часть: сообщество open source – это как самый большой групповой объятие в интернете. Большинство проектов активно ищут новичков и имеют задачи с тегом "good first issue", специально для таких, как вы! Владельцы проектов искренне радуются, когда видят новых участников, потому что помнят свои первые шаги. ```mermaid flowchart TD - A[🔍 Explore GitHub] --> B[🏷️ Find "good first issue"] - B --> C[📖 Read Contributing Guidelines] - C --> D[🍴 Fork Repository] - D --> E[💻 Set Up Local Environment] - E --> F[🌿 Create Feature Branch] - F --> G[✨ Make Your Contribution] - G --> H[🧪 Test Your Changes] - H --> I[📝 Write Clear Commit] - I --> J[📤 Push & Create PR] - J --> K[💬 Engage with Feedback] - K --> L[🎉 Merged! You're a Contributor!] - L --> M[🌟 Find Next Issue] + A[🔍 Исследовать GitHub] --> B[🏷️ Найти "good first issue"] + B --> C[📖 Прочитать Руководство по Вкладу] + C --> D[🍴 Форкнуть Репозиторий] + D --> E[💻 Настроить Локальную Среду] + E --> F[🌿 Создать Ветку для Функции] + F --> G[✨ Внести Свой Вклад] + G --> H[🧪 Протестировать Изменения] + H --> I[📝 Написать Понятный Коммит] + I --> J[📤 Запушить и Создать PR] + J --> K[💬 Взаимодействовать с Обратной Связью] + K --> L[🎉 Слияние! Вы Становитесь Контрибьютором!] + L --> M[🌟 Найти Следующую Задачу] style A fill:#e1f5fe style L fill:#c8e6c9 style M fill:#fff59d ``` +Вы не просто учитесь кодировать – вы готовитесь присоединиться к глобальной семье создателей, которые каждый день думают: "Как мы можем сделать цифровой мир немного лучше?" Добро пожаловать в клуб! 🌟 -Вы не просто учитесь программировать – вы готовитесь стать частью глобальной семьи создателей, которые каждый день думают: "Как мы можем сделать цифровой мир немного лучше?" Добро пожаловать в клуб! 🌟 +Сначала найдите репозиторий (или **repo**) на GitHub, который вас интересует и в который вы хотите внести изменения. Вам нужно будет скопировать его содержимое на свой компьютер. -Сначала найдите репозиторий (или **репо**) на GitHub, который вас интересует и в который вы хотели бы внести изменения. Вам нужно будет скопировать его содержимое на свой компьютер. - -✅ Хороший способ найти репозитории для новичков – [поиск по тегу 'good-first-issue'](https://github.blog/2020-01-22-browse-good-first-issues-to-start-contributing-to-open-source/). +✅ Хороший способ найти репозитории, подходящие для новичков, – [искать по тегу 'good-first-issue'](https://github.blog/2020-01-22-browse-good-first-issues-to-start-contributing-to-open-source/). ![Скопировать репозиторий локально](../../../../translated_images/clone_repo.5085c48d666ead57664f050d806e325d7f883be6838c821e08bc823ab7c66665.ru.png) @@ -614,13 +610,13 @@ flowchart TD Откройте терминал и клонируйте репозиторий следующим образом: ```bash -# Using HTTPS +# Использование HTTPS git clone https://github.com/ProjectURL -# Using SSH (requires SSH key setup) +# Использование SSH (требуется настройка SSH-ключа) git clone git@github.com:username/repository.git -# Using GitHub CLI +# Использование GitHub CLI gh repo clone username/repository ``` @@ -628,151 +624,152 @@ gh repo clone username/repository `cd ProjectURL` Вы также можете открыть весь проект, используя: -- **[GitHub Codespaces](https://github.com/features/codespaces)** - облачная среда разработки GitHub с VS Code в браузере -- **[GitHub Desktop](https://desktop.github.com/)** - графическое приложение для операций с Git -- **[GitHub.dev](https://github.dev)** - нажмите клавишу `.` на любом репозитории GitHub, чтобы открыть VS Code в браузере +- **[GitHub Codespaces](https://github.com/features/codespaces)** – облачная среда разработки GitHub с VS Code в браузере +- **[GitHub Desktop](https://desktop.github.com/)** – графическое приложение для операций с Git +- **[GitHub.dev](https://github.dev)** – нажмите клавишу `.` на любом репозитории GitHub, чтобы открыть VS Code в браузере - **VS Code** с расширением GitHub Pull Requests Наконец, вы можете скачать код в виде архива. -### Несколько интересных фактов о GitHub +### Несколько интересных вещей о GitHub -Вы можете ставить звёздочки, следить за обновлениями и "форкать" любой публичный репозиторий на GitHub. Найти свои отмеченные звёздочками репозитории можно в выпадающем меню в правом верхнем углу. Это как закладки, но для кода. +Вы можете поставить звёздочку, подписаться и/или "форкнуть" любой публичный репозиторий на GitHub. Вы найдёте свои отмеченные звёздочкой репозитории в выпадающем меню в правом верхнем углу. Это как закладки, но для кода. -У проектов есть трекер задач, чаще всего на GitHub в разделе "Issues", если не указано иначе, где люди обсуждают вопросы, связанные с проектом. А вкладка Pull Requests – это место, где обсуждаются и проверяются изменения, находящиеся в процессе. +У проектов есть трекер задач, чаще всего на GitHub во вкладке "Issues", если не указано иначе, где люди обсуждают проблемы, связанные с проектом. А вкладка Pull Requests – это место, где обсуждаются и проверяются изменения, которые находятся в процессе. У проектов также могут быть обсуждения на форумах, в списках рассылки или чатах, таких как Slack, Discord или IRC. 🔧 **Современные функции GitHub**: -- **GitHub Discussions** - Встроенный форум для обсуждений сообщества -- **GitHub Sponsors** - Финансовая поддержка владельцев проектов -- **Вкладка Security** - Отчёты о уязвимостях и рекомендации по безопасности -- **Вкладка Actions** - Автоматизированные рабочие процессы и CI/CD пайплайны -- **Вкладка Insights** - Аналитика о вкладчиках, коммитах и состоянии проекта -- **Вкладка Projects** - Встроенные инструменты управления проектами на GitHub +- **GitHub Discussions** – встроенный форум для обсуждений сообщества +- **GitHub Sponsors** – финансовая поддержка владельцев проектов +- **Вкладка Security** – отчёты о уязвимостях и рекомендации по безопасности +- **Вкладка Actions** – автоматизированные рабочие процессы и CI/CD пайплайны +- **Вкладка Insights** – аналитика о участниках, коммитах и состоянии проекта +- **Вкладка Projects** – встроенные инструменты управления проектами на GitHub -✅ Ознакомьтесь с вашим новым репозиторием на GitHub и попробуйте сделать несколько вещей, например, изменить настройки, добавить информацию в репозиторий, создать проект (например, доску Kanban) и настроить GitHub Actions для автоматизации. Возможностей много! +✅ Осмотритесь в своём новом репозитории на GitHub и попробуйте сделать несколько вещей, например, изменить настройки, добавить информацию в репозиторий, создать проект (например, доску Kanban) и настроить GitHub Actions для автоматизации. Возможностей много! --- ## 🚀 Задание -Ну что, пора проверить ваши новые суперспособности на GitHub! 🚀 Вот задание, которое поможет вам закрепить знания самым увлекательным образом: +Ну что, пора испытать ваши новые суперспособности на GitHub! 🚀 Вот задание, которое поможет вам всё понять и закрепить: -Возьмите друга (или члена семьи, который всегда интересуется, чем вы занимаетесь с компьютером) и отправьтесь в совместное кодинг-приключение! Здесь начинается настоящая магия – создайте проект, пусть ваш друг его форкнет, создайте ветки и объединяйте изменения, как настоящие профессионалы. +Возьмите друга (или того члена семьи, который всегда спрашивает, чем вы занимаетесь с этим "компьютерным делом") и отправьтесь в совместное кодовое приключение! Здесь начинается настоящая магия – создайте проект, пусть ваш друг его форкнет, создайте несколько веток и объедините изменения, как настоящие профессионалы. -Не буду скрывать – вы, вероятно, будете смеяться (особенно когда оба попробуете изменить одну и ту же строку), возможно, немного запутаетесь, но обязательно испытаете те удивительные моменты "ага!", которые делают весь процесс обучения стоящим. А ещё есть что-то особенное в том, чтобы разделить первый успешный merge с кем-то – это как маленький праздник ваших достижений! +Не буду скрывать – вы, скорее всего, будете смеяться (особенно когда оба попробуете изменить одну и ту же строку), возможно, немного запутаетесь, но обязательно испытаете те удивительные моменты "ага!", которые делают весь процесс обучения стоящим. А ещё есть что-то особенное в том, чтобы разделить первый успешный merge с кем-то – это как маленький праздник того, как далеко вы продвинулись! -Пока у вас нет напарника? Не переживайте! Сообщество GitHub полно невероятно дружелюбных людей, которые помнят, каково это быть новичком. Ищите репозитории с меткой "good first issue" – это как приглашение: "Эй, новички, давайте учиться вместе!" Как это круто? +Ещё нет кодового друга? Не переживайте! Сообщество GitHub полно невероятно дружелюбных людей, которые помнят, каково это быть новичком. Ищите репозитории с меткой "good first issue" – это как приглашение: "Эй, новички, приходите учиться с нами!" Как это круто? ## Викторина после лекции [Викторина после лекции](https://ff-quizzes.netlify.app/web/en/) ## Обзор и продолжение обучения -Ух ты! 🎉 Посмотрите на себя – вы только что освоили основы GitHub, как настоящий чемпион! Если ваш мозг сейчас немного перегружен, это абсолютно нормально и даже хороший знак. Вы только что изучили инструменты, которые мне потребовалось несколько недель, чтобы освоить, когда я начинал. +Ух ты! 🎉 Посмотрите на себя – вы только что освоили основы GitHub, как настоящий чемпион! Если ваш мозг сейчас немного перегружен, это абсолютно нормально и даже хороший знак. Вы только что узнали инструменты, на освоение которых у меня ушли недели, когда я начинал. -Git и GitHub невероятно мощные (серьёзно мощные), и каждый разработчик, которого я знаю – включая тех, кто сейчас кажется волшебниками – должен был практиковаться и немного путаться, прежде чем всё стало понятно. То, что вы прошли этот урок, означает, что вы уже на пути к освоению одних из самых важных инструментов в арсенале разработчика. +Git и GitHub невероятно мощные (серьёзно мощные), и каждый разработчик, которого я знаю – включая тех, кто сейчас кажется волшебником – должен был практиковаться и немного путаться, прежде чем всё стало понятно. Тот факт, что вы прошли этот урок, означает, что вы уже на пути к освоению одних из самых важных инструментов в арсенале разработчика. Вот несколько отличных ресурсов, которые помогут вам практиковаться и стать ещё круче: -- [Руководство по внесению вклада в проекты с открытым исходным кодом](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) – Ваш путеводитель к тому, чтобы изменить мир -- [Шпаргалка по Git](https://training.github.com/downloads/github-git-cheat-sheet/) – Держите её под рукой для быстрого доступа! +- [Руководство по внесению вклада в open source](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) – ваш путеводитель к тому, чтобы изменить мир +- [Шпаргалка по Git](https://training.github.com/downloads/github-git-cheat-sheet/) – держите её под рукой для быстрого доступа! -И помните: практика делает прогресс, а не совершенство! Чем больше вы используете Git и GitHub, тем естественнее это становится. GitHub создал потрясающие интерактивные курсы, которые позволяют вам практиковаться в безопасной среде: +И помните: практика делает прогресс, а не совершенство! Чем больше вы используете Git и GitHub, тем естественнее это становится. GitHub создал несколько потрясающих интерактивных курсов, которые позволяют вам практиковаться в безопасной среде: - [Введение в GitHub](https://github.com/skills/introduction-to-github) - [Общение с использованием Markdown](https://github.com/skills/communicate-using-markdown) - [GitHub Pages](https://github.com/skills/github-pages) - [Управление конфликтами слияния](https://github.com/skills/resolve-merge-conflicts) -**Хотите приключений? Ознакомьтесь с этими современными инструментами:** -- [Документация GitHub CLI](https://cli.github.com/manual/) – Для тех, кто хочет почувствовать себя мастером командной строки -- [Документация GitHub Codespaces](https://docs.github.com/en/codespaces) – Кодируйте в облаке! -- [Документация GitHub Actions](https://docs.github.com/en/actions) – Автоматизируйте всё -- [Лучшие практики работы с Git](https://www.atlassian.com/git/tutorials/comparing-workflows) – Повышайте уровень своего рабочего процесса +**Чувствуете себя авантюристом? Ознакомьтесь с этими современными инструментами:** +- [Документация GitHub CLI](https://cli.github.com/manual/) – для тех, кто хочет почувствовать себя мастером командной строки +- [Документация GitHub Codespaces](https://docs.github.com/en/codespaces) – кодируйте в облаке! +- [Документация GitHub Actions](https://docs.github.com/en/actions) – автоматизируйте всё +- [Лучшие практики Git](https://www.atlassian.com/git/tutorials/comparing-workflows) – улучшите свой рабочий процесс -## Вызов GitHub Copilot Agent 🚀 +## Задание с GitHub Copilot Agent 🚀 Используйте режим Agent, чтобы выполнить следующее задание: -**Описание:** Создайте совместный проект веб-разработки, который демонстрирует полный рабочий процесс GitHub, изученный в этом уроке. Это задание поможет вам практиковаться в создании репозиториев, использовании функций для совместной работы и современных рабочих процессах Git в реальной ситуации. +**Описание:** Создайте совместный проект веб-разработки, который демонстрирует полный рабочий процесс GitHub, изученный в этом уроке. Это задание поможет вам попрактиковаться в создании репозиториев, функциях совместной работы и современных рабочих процессах Git в реальном сценарии. -**Задание:** Создайте новый публичный репозиторий GitHub для простого проекта "Ресурсы веб-разработки". Репозиторий должен включать хорошо структурированный файл README.md, содержащий полезные инструменты и ресурсы для веб-разработки, организованные по категориям (HTML, CSS, JavaScript и т.д.). Настройте репозиторий с соблюдением стандартов сообщества, включая лицензию, рекомендации по внесению вклада и кодекс поведения. Создайте как минимум две ветки для функций: одну для добавления ресурсов CSS и другую для ресурсов JavaScript. Сделайте коммиты в каждую ветку с описательными сообщениями коммитов, затем создайте pull requests для слияния изменений обратно в основную ветку. Включите функции GitHub, такие как Issues, Discussions, и настройте базовый рабочий процесс GitHub Actions для автоматических проверок. +**Задание:** Создайте новый публичный репозиторий GitHub для простого проекта "Ресурсы веб-разработки". Репозиторий должен включать хорошо структурированный файл README.md, перечисляющий полезные инструменты и ресурсы для веб-разработки, организованные по категориям (HTML, CSS, JavaScript и т.д.). Настройте репозиторий с соблюдением стандартов сообщества, включая лицензию, рекомендации по внесению вклада и кодекс поведения. Создайте как минимум две ветки для функций: одну для добавления ресурсов CSS и другую для ресурсов JavaScript. Сделайте коммиты в каждую ветку с описательными сообщениями коммитов, затем создайте pull requests для слияния изменений обратно в main. Включите функции GitHub, такие как Issues, Discussions, и настройте базовый рабочий процесс GitHub Actions для автоматических проверок. ## Задание -Ваша миссия, если вы решите её принять: Пройдите курс [Введение в GitHub](https://github.com/skills/introduction-to-github) на GitHub Skills. Этот интерактивный курс позволит вам практиковаться во всём, что вы узнали, в безопасной, управляемой среде. А ещё вы получите классный значок, когда закончите! 🏅 +Ваша миссия, если вы решите её принять: Пройдите курс [Введение в GitHub](https://github.com/skills/introduction-to-github) на GitHub Skills. Этот интерактивный курс позволит вам попрактиковаться во всём, что вы узнали, в безопасной, управляемой среде. А ещё вы получите классный значок, когда закончите! 🏅 **Готовы к новым вызовам?** -- Настройте SSH-аутентификацию для вашего аккаунта GitHub (больше никаких паролей!) +- Настройте SSH-аутентификацию для своей учётной записи GitHub (больше никаких паролей!) - Попробуйте использовать GitHub CLI для ежедневных операций с Git - Создайте репозиторий с рабочим процессом GitHub Actions - Исследуйте GitHub Codespaces, открыв этот самый репозиторий в облачном редакторе --- -## 🚀 Ваш путь к мастерству на GitHub +## 🚀 Ваш таймлайн освоения GitHub -### ⚡ **Что можно сделать за следующие 5 минут** -- [ ] Отметьте звёздочкой этот репозиторий и ещё 3 проекта, которые вас интересуют -- [ ] Настройте двухфакторную аутентификацию для вашего аккаунта GitHub -- [ ] Создайте простой README для вашего первого репозитория +### ⚡ **Что вы можете сделать за следующие 5 минут** +- [ ] Поставьте звёздочку этому репозиторию и ещё 3 проектам, которые вас интересуют +- [ ] Настройте двухфакторную аутентификацию для своей учётной записи GitHub +- [ ] Создайте простой README для своего первого репозитория - [ ] Подпишитесь на 5 разработчиков, чья работа вас вдохновляет -### 🎯 **Что можно достичь за час** +### 🎯 **Что вы можете достичь за час** - [ ] Пройдите викторину после урока и подумайте о своём пути на GitHub -- [ ] Настройте SSH-ключи для аутентификации на GitHub без пароля -- [ ] Сделайте свой первый значимый коммит с отличным сообщением -- [ ] Исследуйте вкладку "Explore" на GitHub, чтобы найти интересные проекты +- [ ] Настройте SSH-ключи для аутентификации на GitHub без паролей +- [ ] Сделайте свой первый значимый коммит с отличным сообщением коммита +- [ ] Исследуйте вкладку "Explore" на GitHub, чтобы найти популярные проекты - [ ] Попрактикуйтесь в форке репозитория и внесении небольших изменений -### 📅 **Ваше недельное приключение на GitHub** +### 📅 **Ваш недельный GitHub-приключение** - [ ] Пройдите курсы GitHub Skills (Введение в GitHub, Markdown) - [ ] Сделайте свой первый pull request в проект с открытым исходным кодом -- [ ] Настройте сайт GitHub Pages, чтобы показать свои работы -- [ ] Присоединитесь к обсуждениям на GitHub по интересующим вас проектам -- [ ] Создайте репозиторий с соблюдением стандартов сообщества (README, лицензия и т.д.) -- [ ] Попробуйте GitHub Codespaces для разработки в облаке +- [ ] Настройте сайт GitHub Pages, чтобы показать свою работу +- [ ] Присоединитесь к обсуждениям на GitHub в интересующих вас проектах +- [ ] Создайте репозиторий с соблюдением стандартов сообщества (README, Лицензия и т.д.) +- [ ] Попробуйте GitHub Codespaces для облачной разработки -### 🌟 **Ваше месячное преобразование** +### 🌟 **Ваш месячный путь трансформации** - [ ] Внесите вклад в 3 разных проекта с открытым исходным кодом -- [ ] Станьте наставником для новичка на GitHub (передайте свои знания!) -- [ ] Настройте автоматизированные рабочие процессы с помощью GitHub Actions +- [ ] Наставьте кого-то нового на GitHub (передайте знания!) +- [ ] Настройте автоматизированные рабочие процессы с GitHub Actions - [ ] Создайте портфолио, демонстрирующее ваши вклады на GitHub - [ ] Участвуйте в Hacktoberfest или подобных мероприятиях сообщества -- [ ] Станьте владельцем собственного проекта, в который будут вносить вклад другие +- [ ] Станьте владельцем собственного проекта, в который другие будут вносить вклад -### 🎓 **Итоговая проверка вашего мастерства на GitHub** +### 🎓 **Итоговая проверка освоения GitHub** -**Отпразднуйте свои достижения:** +**Отпразднуйте, как далеко вы продвинулись:** - Что вам больше всего нравится в использовании GitHub? -- Какая функция для совместной работы вас больше всего вдохновляет? -- Насколько уверенно вы чувствуете себя в вопросах вклада в open source? -- Какой проект вы хотите поддержать в первую очередь? +- Какая функция совместной работы вас больше всего вдохновляет? +- Насколько уверенно вы чувствуете себя в отношении вклада в open source? +- Какой первый проект вы хотите поддержать? ```mermaid journey - title Your GitHub Confidence Journey - section Today - Nervous: 3: You - Curious: 4: You - Excited: 5: You - section This Week - Practicing: 4: You - Contributing: 5: You - Connecting: 5: You - section Next Month - Collaborating: 5: You - Leading: 5: You - Inspiring Others: 5: You + title Ваш путь уверенности в GitHub + section Сегодня + Нервный: 3: Вы + Любопытный: 4: Вы + Взволнованный: 5: Вы + section На этой неделе + Практикуетесь: 4: Вы + Вносите вклад: 5: Вы + Устанавливаете связи: 5: Вы + section В следующем месяце + Сотрудничаете: 5: Вы + Руководите: 5: Вы + Вдохновляете других: 5: Вы ``` - > 🌍 **Добро пожаловать в глобальное сообщество разработчиков!** Теперь у вас есть инструменты для сотрудничества с миллионами разработчиков по всему миру. Ваш первый вклад может показаться небольшим, но помните – каждый крупный проект с открытым исходным кодом начался с того, что кто-то сделал свой первый коммит. Вопрос не в том, окажете ли вы влияние, а в том, какой удивительный проект первым получит выгоду от вашего уникального взгляда! 🚀 Помните: каждый эксперт когда-то был новичком. У вас всё получится! 💪 --- + **Отказ от ответственности**: -Этот документ был переведен с использованием сервиса автоматического перевода [Co-op Translator](https://github.com/Azure/co-op-translator). Хотя мы стремимся к точности, пожалуйста, учитывайте, что автоматические переводы могут содержать ошибки или неточности. Оригинальный документ на его родном языке следует считать авторитетным источником. Для получения критически важной информации рекомендуется профессиональный перевод человеком. Мы не несем ответственности за любые недоразумения или неправильные интерпретации, возникшие в результате использования данного перевода. \ No newline at end of file +Этот документ был переведен с использованием сервиса автоматического перевода [Co-op Translator](https://github.com/Azure/co-op-translator). Хотя мы стремимся к точности, пожалуйста, учитывайте, что автоматические переводы могут содержать ошибки или неточности. Оригинальный документ на его родном языке следует считать авторитетным источником. Для получения критически важной информации рекомендуется профессиональный перевод человеком. Мы не несем ответственности за любые недоразумения или неправильные интерпретации, возникшие в результате использования данного перевода. + \ No newline at end of file diff --git a/translations/ru/README.md b/translations/ru/README.md index f3dc3892..795eefe1 100644 --- a/translations/ru/README.md +++ b/translations/ru/README.md @@ -1,212 +1,213 @@ -[![Лицензия GitHub](https://img.shields.io/github/license/microsoft/Web-Dev-For-Beginners.svg)](https://github.com/microsoft/Web-Dev-For-Beginners/blob/master/LICENSE) -[![Участники GitHub](https://img.shields.io/github/contributors/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/graphs/contributors/) -[![Проблемы GitHub](https://img.shields.io/github/issues/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/issues/) -[![Запросы на GitHub](https://img.shields.io/github/issues-pr/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/pulls/) -[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) +[![GitHub license](https://img.shields.io/github/license/microsoft/Web-Dev-For-Beginners.svg)](https://github.com/microsoft/Web-Dev-For-Beginners/blob/master/LICENSE) +[![GitHub contributors](https://img.shields.io/github/contributors/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/graphs/contributors/) +[![GitHub issues](https://img.shields.io/github/issues/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/issues/) +[![GitHub pull-requests](https://img.shields.io/github/issues-pr/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/pulls/) +[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) -[![Наблюдатели GitHub](https://img.shields.io/github/watchers/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Watch&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/watchers/) -[![Форки GitHub](https://img.shields.io/github/forks/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Fork&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/network/) -[![Звезды GitHub](https://img.shields.io/github/stars/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Star&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/stargazers/) +[![GitHub watchers](https://img.shields.io/github/watchers/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Watch&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/watchers/) +[![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Fork&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/network/) +[![GitHub stars](https://img.shields.io/github/stars/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Star&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/stargazers/) -[![](https://dcbadge.vercel.app/api/server/ByRwuEEgH4)](https://discord.gg/zxKYvhSnVp?WT.mc_id=academic-000002-leestott) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) -# Веб-разработка для начинающих - учебный курс +# Веб-разработка для начинающих - учебный курс -Изучите основы веб-разработки с нашим 12-недельным курсом от Microsoft Cloud Advocates. Каждое из 24 занятий посвящено JavaScript, CSS и HTML через практические проекты, такие как террариумы, расширения для браузера и космические игры. Участвуйте в викторинах, обсуждениях и практических заданиях. Улучшите свои навыки и оптимизируйте запоминание знаний благодаря эффективной методике обучения на основе проектов. Начните свой путь в программировании уже сегодня! +Изучите основы веб-разработки с нашим 12-недельным курсом от Microsoft Cloud Advocates. Каждое из 24 занятий посвящено JavaScript, CSS и HTML через практические проекты, такие как террариумы, расширения для браузера и космические игры. Участвуйте в викторинах, обсуждениях и практических заданиях. Улучшите свои навыки и оптимизируйте запоминание знаний благодаря эффективной проектной методике обучения. Начните свой путь в программировании уже сегодня! -Присоединяйтесь к сообществу Azure AI Foundry в Discord +Присоединяйтесь к сообществу Azure AI Foundry Discord -[![Microsoft Azure AI Foundry Discord](https://dcbadge.limes.pink/api/server/ByRwuEEgH4)](https://discord.com/invite/ByRwuEEgH4) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) -Следуйте этим шагам, чтобы начать использовать эти ресурсы: -1. **Сделайте форк репозитория**: Нажмите [![Форки GitHub](https://img.shields.io/github/forks/microsoft/Web-Dev-For-beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/fork) -2. **Клонируйте репозиторий**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` -3. [**Присоединяйтесь к Azure AI Foundry Discord и познакомьтесь с экспертами и другими разработчиками**](https://discord.com/invite/ByRwuEEgH4) +Следуйте этим шагам, чтобы начать использовать эти ресурсы: +1. **Сделайте форк репозитория**: Нажмите [![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/fork) +2. **Клонируйте репозиторий**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` +3. [**Присоединяйтесь к Azure AI Foundry Discord и познакомьтесь с экспертами и другими разработчиками**](https://discord.com/invite/ByRwuEEgH4) -### 🌐 Поддержка нескольких языков +### 🌐 Поддержка нескольких языков -#### Поддерживается через GitHub Action (автоматически и всегда актуально) +#### Поддерживается через GitHub Action (автоматически и всегда актуально) - -[Арабский](../ar/README.md) | [Бенгальский](../bn/README.md) | [Болгарский](../bg/README.md) | [Бирманский (Мьянма)](../my/README.md) | [Китайский (упрощенный)](../zh/README.md) | [Китайский (традиционный, Гонконг)](../hk/README.md) | [Китайский (традиционный, Макао)](../mo/README.md) | [Китайский (традиционный, Тайвань)](../tw/README.md) | [Хорватский](../hr/README.md) | [Чешский](../cs/README.md) | [Датский](../da/README.md) | [Голландский](../nl/README.md) | [Эстонский](../et/README.md) | [Финский](../fi/README.md) | [Французский](../fr/README.md) | [Немецкий](../de/README.md) | [Греческий](../el/README.md) | [Иврит](../he/README.md) | [Хинди](../hi/README.md) | [Венгерский](../hu/README.md) | [Индонезийский](../id/README.md) | [Итальянский](../it/README.md) | [Японский](../ja/README.md) | [Корейский](../ko/README.md) | [Литовский](../lt/README.md) | [Малайский](../ms/README.md) | [Маратхи](../mr/README.md) | [Непальский](../ne/README.md) | [Норвежский](../no/README.md) | [Персидский (фарси)](../fa/README.md) | [Польский](../pl/README.md) | [Португальский (Бразилия)](../br/README.md) | [Португальский (Португалия)](../pt/README.md) | [Панджаби (Гурмукхи)](../pa/README.md) | [Румынский](../ro/README.md) | [Русский](./README.md) | [Сербский (кириллица)](../sr/README.md) | [Словацкий](../sk/README.md) | [Словенский](../sl/README.md) | [Испанский](../es/README.md) | [Суахили](../sw/README.md) | [Шведский](../sv/README.md) | [Тагальский (филиппинский)](../tl/README.md) | [Тамильский](../ta/README.md) | [Тайский](../th/README.md) | [Турецкий](../tr/README.md) | [Украинский](../uk/README.md) | [Урду](../ur/README.md) | [Вьетнамский](../vi/README.md) - + +[Arabic](../ar/README.md) | [Bengali](../bn/README.md) | [Bulgarian](../bg/README.md) | [Burmese (Myanmar)](../my/README.md) | [Chinese (Simplified)](../zh/README.md) | [Chinese (Traditional, Hong Kong)](../hk/README.md) | [Chinese (Traditional, Macau)](../mo/README.md) | [Chinese (Traditional, Taiwan)](../tw/README.md) | [Croatian](../hr/README.md) | [Czech](../cs/README.md) | [Danish](../da/README.md) | [Dutch](../nl/README.md) | [Estonian](../et/README.md) | [Finnish](../fi/README.md) | [French](../fr/README.md) | [German](../de/README.md) | [Greek](../el/README.md) | [Hebrew](../he/README.md) | [Hindi](../hi/README.md) | [Hungarian](../hu/README.md) | [Indonesian](../id/README.md) | [Italian](../it/README.md) | [Japanese](../ja/README.md) | [Korean](../ko/README.md) | [Lithuanian](../lt/README.md) | [Malay](../ms/README.md) | [Marathi](../mr/README.md) | [Nepali](../ne/README.md) | [Norwegian](../no/README.md) | [Persian (Farsi)](../fa/README.md) | [Polish](../pl/README.md) | [Portuguese (Brazil)](../br/README.md) | [Portuguese (Portugal)](../pt/README.md) | [Punjabi (Gurmukhi)](../pa/README.md) | [Romanian](../ro/README.md) | [Russian](./README.md) | [Serbian (Cyrillic)](../sr/README.md) | [Slovak](../sk/README.md) | [Slovenian](../sl/README.md) | [Spanish](../es/README.md) | [Swahili](../sw/README.md) | [Swedish](../sv/README.md) | [Tagalog (Filipino)](../tl/README.md) | [Tamil](../ta/README.md) | [Thai](../th/README.md) | [Turkish](../tr/README.md) | [Ukrainian](../uk/README.md) | [Urdu](../ur/README.md) | [Vietnamese](../vi/README.md) + -**Если вы хотите добавить дополнительные переводы, поддерживаемые языки перечислены [здесь](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)** +**Если вы хотите добавить поддержку дополнительных языков, список доступных языков можно найти [здесь](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)** -[![Открыть в Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners) +[![Open in Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners) -#### 🧑‍🎓 _Вы студент?_ +#### 🧑‍🎓 _Вы студент?_ -Посетите [**Студенческую страницу**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon), где вы найдете ресурсы для начинающих, студенческие пакеты и даже способы получить бесплатный сертификат. Это страница, которую стоит добавить в закладки и проверять время от времени, так как мы ежемесячно обновляем контент. +Посетите [**страницу для студентов**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon), где вы найдете ресурсы для начинающих, студенческие пакеты и даже способы получить бесплатный сертификат. Это страница, которую стоит добавить в закладки и проверять время от времени, так как мы ежемесячно обновляем контент. -### 📣 Объявление - Новые задания с режимом GitHub Copilot Agent! +### 📣 Объявление - Новые задания с режимом GitHub Copilot Agent! -Добавлено новое задание, ищите "GitHub Copilot Agent Challenge 🚀" в большинстве глав. Это новое задание, которое вы можете выполнить, используя GitHub Copilot и режим Agent. Если вы еще не использовали режим Agent, он способен не только генерировать текст, но и создавать и редактировать файлы, выполнять команды и многое другое. +Добавлено новое задание, ищите "GitHub Copilot Agent Challenge 🚀" в большинстве глав. Это новое задание для выполнения с использованием GitHub Copilot и режима Agent. Если вы еще не использовали режим Agent, он способен не только генерировать текст, но и создавать и редактировать файлы, выполнять команды и многое другое. -### 📣 Объявление - _Новый проект с использованием генеративного ИИ_ +### 📣 Объявление - _Новый проект с использованием генеративного ИИ_ -Только что добавлен новый проект "AI Assistant", ознакомьтесь с ним [проект](./09-chat-project/README.md) +Только что добавлен новый проект AI Assistant, ознакомьтесь с ним [проект](./09-chat-project/README.md) -### 📣 Объявление - _Новый учебный курс_ по генеративному ИИ для JavaScript +### 📣 Объявление - _Новый учебный курс_ по генеративному ИИ для JavaScript -Не пропустите наш новый учебный курс по генеративному ИИ! +Не пропустите наш новый учебный курс по генеративному ИИ! -Посетите [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course), чтобы начать! +Посетите [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course), чтобы начать! -![Фон](../../translated_images/background.148a8d43afde57303419a663f50daf586681bc2fabf833f66ef6954073983c66.ru.png) +![Background](../../translated_images/background.148a8d43afde57303419a663f50daf586681bc2fabf833f66ef6954073983c66.ru.png) -- Уроки, охватывающие все от основ до RAG. -- Взаимодействуйте с историческими персонажами, используя GenAI и наше приложение-компаньон. -- Веселый и увлекательный сюжет, вы будете путешествовать во времени! +- Уроки, охватывающие все от основ до RAG. +- Взаимодействуйте с историческими персонажами с помощью GenAI и нашего приложения-компаньона. +- Увлекательный и интересный сюжет, вы будете путешествовать во времени! -![персонаж](../../translated_images/character.5c0dd8e067ffd693c16e2c5b7412ab075a2215ce31f998305639fa3a05e14fbe.ru.png) +![character](../../translated_images/character.5c0dd8e067ffd693c16e2c5b7412ab075a2215ce31f998305639fa3a05e14fbe.ru.png) -Каждый урок включает задание для выполнения, проверку знаний и вызов, чтобы помочь вам изучить такие темы, как: -- Создание запросов и инженерия запросов -- Генерация текстовых и графических приложений -- Приложения для поиска +Каждый урок включает задание для выполнения, проверку знаний и вызов, чтобы помочь вам изучить такие темы, как: +- Создание запросов и инженерия запросов +- Генерация текстовых и графических приложений +- Приложения для поиска -Посетите [https://aka.ms/genai-js-course](../../[https:/aka.ms/genai-js-course), чтобы начать! +Посетите [https://aka.ms/genai-js-course](../../[https:/aka.ms/genai-js-course), чтобы начать! +## 🌱 Начало работы +> **Учителя**, мы [включили несколько предложений](for-teachers.md) о том, как использовать этот учебный курс. Мы будем рады вашему отзыву [в нашем форуме обсуждений](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! -## 🌱 Начало работы +**[Ученики](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, для каждого урока начните с предварительной викторины, затем изучите материалы лекции, выполните различные задания и проверьте свои знания с помощью викторины после лекции. -> **Учителя**, мы [включили несколько предложений](for-teachers.md) о том, как использовать этот учебный курс. Мы будем рады вашим отзывам [в нашем форуме обсуждений](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! +Чтобы улучшить процесс обучения, общайтесь с другими учениками, чтобы работать над проектами вместе! Обсуждения приветствуются в нашем [форуме обсуждений](https://github.com/microsoft/Web-Dev-For-Beginners/discussions), где наша команда модераторов будет готова ответить на ваши вопросы. -**[Ученики](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, для каждого урока начните с предварительной викторины и продолжайте изучение материала лекции, выполняя различные задания и проверяя свои знания с помощью викторины после лекции. +Для дальнейшего обучения мы настоятельно рекомендуем изучить [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) для получения дополнительных учебных материалов. -Чтобы улучшить ваш учебный опыт, общайтесь с коллегами, чтобы работать над проектами вместе! Обсуждения приветствуются в нашем [форуме обсуждений](https://github.com/microsoft/Web-Dev-For-Beginners/discussions), где наша команда модераторов будет готова ответить на ваши вопросы. +### 📋 Настройка вашей среды -Для дальнейшего обучения мы настоятельно рекомендуем изучить [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) для получения дополнительных учебных материалов. +Этот учебный курс уже готов к разработке! Вы можете выбрать запуск курса в [Codespace](https://github.com/features/codespaces/) (_браузерная среда, не требующая установки_), или локально на вашем компьютере с использованием текстового редактора, такого как [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). -### 📋 Настройка вашей среды +#### Создайте свой репозиторий +Чтобы легко сохранять свою работу, рекомендуется создать собственную копию этого репозитория. Вы можете сделать это, нажав кнопку **Use this template** в верхней части страницы. Это создаст новый репозиторий в вашем аккаунте GitHub с копией учебного курса. -Этот учебный курс имеет готовую среду разработки! Когда вы начнете, вы можете выбрать запуск учебного курса в [Codespace](https://github.com/features/codespaces/) (_браузерная среда, не требующая установки_), или локально на вашем компьютере, используя текстовый редактор, такой как [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). +Следуйте этим шагам: +1. **Сделайте форк репозитория**: Нажмите кнопку "Fork" в правом верхнем углу этой страницы. +2. **Клонируйте репозиторий**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` -#### Создайте свой репозиторий -Чтобы легко сохранять свою работу, рекомендуется создать собственную копию этого репозитория. Вы можете сделать это, нажав кнопку **Use this template** в верхней части страницы. Это создаст новый репозиторий в вашем аккаунте GitHub с копией учебного курса. +#### Запуск учебного курса в Codespace -Следуйте этим шагам: -1. **Сделайте форк репозитория**: Нажмите кнопку "Fork" в правом верхнем углу этой страницы. -2. **Клонируйте репозиторий**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` +В вашей копии этого репозитория, которую вы создали, нажмите кнопку **Code** и выберите **Open with Codespaces**. Это создаст новый Codespace для работы. -#### Запуск учебного курса в Codespace +![Codespace](../../translated_images/createcodespace.0238bbf4d7a8d955fa8fa7f7b6602a3cb6499a24708fbee589f83211c5a613b7.ru.png) -В вашей копии этого репозитория, которую вы создали, нажмите кнопку **Code** и выберите **Open with Codespaces**. Это создаст новый Codespace для работы. +#### Запуск учебного курса локально на вашем компьютере -![Codespace](../../translated_images/createcodespace.0238bbf4d7a8d955fa8fa7f7b6602a3cb6499a24708fbee589f83211c5a613b7.ru.png) +Чтобы запустить этот учебный курс локально на вашем компьютере, вам понадобится текстовый редактор, браузер и инструмент командной строки. Наш первый урок, [Введение в языки программирования и инструменты](../../1-getting-started-lessons/1-intro-to-programming-languages), проведет вас через различные варианты для каждого из этих инструментов, чтобы вы могли выбрать то, что лучше всего подходит для вас. -#### Запуск учебного курса локально на вашем компьютере +Мы рекомендуем использовать [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) в качестве редактора, который также имеет встроенный [Терминал](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon). Вы можете скачать Visual Studio Code [здесь](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). -Чтобы запустить этот учебный курс локально на вашем компьютере, вам понадобится текстовый редактор, браузер и инструмент командной строки. Наш первый урок, [Введение в языки программирования и инструменты](../../1-getting-started-lessons/1-intro-to-programming-languages), проведет вас через различные варианты для каждого из этих инструментов, чтобы вы могли выбрать то, что лучше всего подходит для вас. +1. Клонируйте ваш репозиторий на компьютер. Вы можете сделать это, нажав кнопку **Code** и скопировав URL: -Мы рекомендуем использовать [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) в качестве редактора, который также имеет встроенный [Терминал](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon). Вы можете скачать Visual Studio Code [здесь](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). + [CodeSpace](./images/createcodespace.png) -1. Клонируйте ваш репозиторий на ваш компьютер. Вы можете сделать это, нажав кнопку **Code** и скопировав URL: - - [CodeSpace](./images/createcodespace.png) - - Затем откройте [Терминал](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) в [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) и выполните следующую команду, заменив `` на URL, который вы только что скопировали: + Затем откройте [Терминал](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) в [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) и выполните следующую команду, заменив `` на URL, который вы только что скопировали: ```bash git clone ``` + +2. Откройте папку в Visual Studio Code. Вы можете сделать это, нажав **File** > **Open Folder** и выбрав папку, которую вы только что клонировали. -2. Откройте папку в Visual Studio Code. Вы можете сделать это, нажав **File** > **Open Folder** и выбрав папку, которую вы только что клонировали. - - -> Рекомендуемые расширения для Visual Studio Code: -> +> Рекомендуемые расширения для Visual Studio Code: +> > * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - для предварительного просмотра HTML-страниц в Visual Studio Code -> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - для ускорения написания кода +> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - помогает писать код быстрее ## 📂 Каждый урок включает: -- необязательный скетчноут -- необязательное дополнительное видео -- разминка-тест перед уроком -- письменный материал урока -- пошаговые инструкции для проектных уроков по созданию проекта -- проверка знаний -- задание -- дополнительное чтение -- [тест после урока](https://ff-quizzes.netlify.app/web/) +- необязательный скетчноут +- необязательное дополнительное видео +- разминка-тест перед уроком +- письменный урок +- для проектных уроков — пошаговые инструкции по созданию проекта +- проверка знаний +- задание-челлендж +- дополнительное чтение +- домашнее задание +- [тест после урока](https://ff-quizzes.netlify.app/web/) -> **Примечание о тестах**: Все тесты находятся в папке Quiz-app, всего 48 тестов по три вопроса в каждом. Они доступны [здесь](https://ff-quizzes.netlify.app/web/), приложение для тестов можно запустить локально или развернуть на Azure; следуйте инструкциям в папке `quiz-app`. +> **Примечание о тестах**: Все тесты находятся в папке Quiz-app, всего 48 тестов по три вопроса каждый. Они доступны [здесь](https://ff-quizzes.netlify.app/web/), приложение для тестов можно запустить локально или развернуть в Azure; следуйте инструкциям в папке `quiz-app`. ## 🗃️ Уроки -| | Название проекта | Изучаемые концепции | Цели обучения | Ссылка на урок | Автор | -| :-: | :----------------------------------------------------------: | :--------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------: | :---------------------: | -| 01 | Начало работы | Введение в программирование и инструменты разработчика | Узнайте основные принципы большинства языков программирования и о программном обеспечении, которое помогает профессиональным разработчикам выполнять свою работу | [Введение в языки программирования и инструменты разработчика](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine | -| 02 | Начало работы | Основы GitHub, включая работу в команде | Как использовать GitHub в вашем проекте, как сотрудничать с другими разработчиками на базе кода | [Введение в GitHub](./1-getting-started-lessons/2-github-basics/README.md) | Floor | -| 03 | Начало работы | Доступность | Узнайте основы доступности веб-сайтов | [Основы доступности](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | -| 04 | Основы JS | Типы данных в JavaScript | Основы типов данных в JavaScript | [Типы данных](./2-js-basics/1-data-types/README.md) | Jasmine | -| 05 | Основы JS | Функции и методы | Узнайте о функциях и методах для управления логикой приложения | [Функции и методы](./2-js-basics/2-functions-methods/README.md) | Jasmine и Christopher | -| 06 | Основы JS | Принятие решений с помощью JS | Узнайте, как создавать условия в вашем коде, используя методы принятия решений | [Принятие решений](./2-js-basics/3-making-decisions/README.md) | Jasmine | -| 07 | Основы JS | Массивы и циклы | Работа с данными с использованием массивов и циклов в JavaScript | [Массивы и циклы](./2-js-basics/4-arrays-loops/README.md) | Jasmine | -| 08 | [Террариум](./3-terrarium/solution/README.md) | Практика HTML | Создайте HTML для онлайн-террариума, сосредоточив внимание на создании макета | [Введение в HTML](./3-terrarium/1-intro-to-html/README.md) | Jen | -| 09 | [Террариум](./3-terrarium/solution/README.md) | Практика CSS | Создайте CSS для стилизации онлайн-террариума, сосредоточив внимание на основах CSS, включая адаптивный дизайн | [Введение в CSS](./3-terrarium/2-intro-to-css/README.md) | Jen | -| 10 | [Террариум](./3-terrarium/solution/README.md) | Замыкания в JavaScript, манипуляция DOM | Создайте JavaScript для работы террариума в качестве интерфейса перетаскивания, сосредоточив внимание на замыканиях и манипуляции DOM | [Замыкания в JavaScript, манипуляция DOM](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | -| 11 | [Игра на скорость печати](./4-typing-game/solution/README.md) | Создание игры на скорость печати | Узнайте, как использовать события клавиатуры для управления логикой вашего JavaScript-приложения | [Программирование, управляемое событиями](./4-typing-game/typing-game/README.md) | Christopher | -| 12 | [Экологичное расширение для браузера](./5-browser-extension/solution/README.md) | Работа с браузерами | Узнайте, как работают браузеры, их историю и как создать первые элементы расширения для браузера | [О браузерах](./5-browser-extension/1-about-browsers/README.md) | Jen | -| 13 | [Экологичное расширение для браузера](./5-browser-extension/solution/README.md) | Создание формы, вызов API и сохранение переменных в локальном хранилище | Создайте элементы JavaScript для вашего расширения браузера, чтобы вызывать API, используя переменные, сохраненные в локальном хранилище | [API, формы и локальное хранилище](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | -| 14 | [Экологичное расширение для браузера](./5-browser-extension/solution/README.md) | Фоновые процессы в браузере, производительность веб-сайтов | Используйте фоновые процессы браузера для управления значком расширения; узнайте о производительности веб-сайтов и некоторых оптимизациях | [Фоновые задачи и производительность](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | -| 15 | [Космическая игра](./6-space-game/solution/README.md) | Более сложная разработка игр с использованием JavaScript | Узнайте о наследовании с использованием классов и композиции, а также о паттерне Pub/Sub, чтобы подготовиться к созданию игры | [Введение в сложную разработку игр](./6-space-game/1-introduction/README.md) | Chris | -| 16 | [Космическая игра](./6-space-game/solution/README.md) | Рисование на холсте | Узнайте о Canvas API, который используется для рисования элементов на экране | [Рисование на холсте](./6-space-game/2-drawing-to-canvas/README.md) | Chris | -| 17 | [Космическая игра](./6-space-game/solution/README.md) | Перемещение элементов по экрану | Узнайте, как элементы могут двигаться, используя декартовы координаты и Canvas API | [Перемещение элементов](./6-space-game/3-moving-elements-around/README.md) | Chris | -| 18 | [Космическая игра](./6-space-game/solution/README.md) | Обнаружение столкновений | Заставьте элементы сталкиваться и реагировать друг на друга, используя нажатия клавиш, и добавьте функцию задержки для обеспечения производительности игры | [Обнаружение столкновений](./6-space-game/4-collision-detection/README.md) | Chris | -| 19 | [Космическая игра](./6-space-game/solution/README.md) | Подсчет очков | Выполняйте математические вычисления на основе состояния игры и производительности | [Подсчет очков](./6-space-game/5-keeping-score/README.md) | Chris | -| 20 | [Космическая игра](./6-space-game/solution/README.md) | Завершение и перезапуск игры | Узнайте о завершении и перезапуске игры, включая очистку ресурсов и сброс значений переменных | [Условие завершения](./6-space-game/6-end-condition/README.md) | Chris | -| 21 | [Банковское приложение](./7-bank-project/solution/README.md) | HTML-шаблоны и маршруты в веб-приложении | Узнайте, как создать каркас архитектуры многостраничного веб-сайта, используя маршрутизацию и HTML-шаблоны | [HTML-шаблоны и маршруты](./7-bank-project/1-template-route/README.md) | Yohan | -| 22 | [Банковское приложение](./7-bank-project/solution/README.md) | Создание формы входа и регистрации | Узнайте о создании форм и обработке процедур проверки | [Формы](./7-bank-project/2-forms/README.md) | Yohan | -| 23 | [Банковское приложение](./7-bank-project/solution/README.md) | Методы получения и использования данных | Как данные поступают в ваше приложение, как их получать, сохранять и удалять | [Данные](./7-bank-project/3-data/README.md) | Yohan | -| 24 | [Банковское приложение](./7-bank-project/solution/README.md) | Концепции управления состоянием | Узнайте, как ваше приложение сохраняет состояние и как управлять им программно | [Управление состоянием](./7-bank-project/4-state-management/README.md) | Yohan | -| 25 | [Редактор кода Browser/VScode](../../8-code-editor) | Работа с VScode | Узнайте, как использовать редактор кода | [Использование редактора кода VScode](./8-code-editor/1-using-a-code-editor/README.md) | Chris | +| | Название проекта | Изучаемые концепции | Учебные цели | Ссылка на урок | Автор | +| :-: | :----------------------------------------------------------: | :------------------------------------------------------------------------: | ---------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------: | :---------------------: | +| 01 | Начало работы | Введение в программирование и инструменты разработчика | Узнайте основные принципы большинства языков программирования и о ПО, которое помогает профессиональным разработчикам в работе | [Введение в языки программирования и инструменты разработчика](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine | +| 02 | Начало работы | Основы GitHub, включая работу в команде | Как использовать GitHub в проекте, как сотрудничать с другими разработчиками | [Введение в GitHub](./1-getting-started-lessons/2-github-basics/README.md) | Floor | +| 03 | Начало работы | Доступность | Узнайте основы доступности веб-сайтов | [Основы доступности](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | +| 04 | Основы JS | Типы данных в JavaScript | Основы типов данных в JavaScript | [Типы данных](./2-js-basics/1-data-types/README.md) | Jasmine | +| 05 | Основы JS | Функции и методы | Узнайте о функциях и методах для управления логикой приложения | [Функции и методы](./2-js-basics/2-functions-methods/README.md) | Jasmine и Christopher | +| 06 | Основы JS | Принятие решений с помощью JS | Узнайте, как создавать условия в коде с использованием методов принятия решений | [Принятие решений](./2-js-basics/3-making-decisions/README.md) | Jasmine | +| 07 | Основы JS | Массивы и циклы | Работа с данными с использованием массивов и циклов в JavaScript | [Массивы и циклы](./2-js-basics/4-arrays-loops/README.md) | Jasmine | +| 08 | [Террариум](./3-terrarium/solution/README.md) | HTML на практике | Создайте HTML для онлайн-террариума, сосредоточившись на создании макета | [Введение в HTML](./3-terrarium/1-intro-to-html/README.md) | Jen | +| 09 | [Террариум](./3-terrarium/solution/README.md) | CSS на практике | Создайте CSS для стилизации онлайн-террариума, сосредоточившись на основах CSS, включая адаптивность страницы | [Введение в CSS](./3-terrarium/2-intro-to-css/README.md) | Jen | +| 10 | [Террариум](./3-terrarium/solution/README.md) | Замыкания в JavaScript, работа с DOM | Напишите JavaScript для террариума, чтобы он работал как интерфейс drag/drop, сосредоточившись на замыканиях и манипуляции DOM | [Замыкания в JavaScript, работа с DOM](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | +| 11 | [Игра на скорость печати](./4-typing-game/solution/README.md) | Создание игры на скорость печати | Узнайте, как использовать события клавиатуры для управления логикой приложения на JavaScript | [Программирование на основе событий](./4-typing-game/typing-game/README.md) | Christopher | +| 12 | [Экологичное расширение для браузера](./5-browser-extension/solution/README.md) | Работа с браузерами | Узнайте, как работают браузеры, их историю, и как создать первые элементы расширения для браузера | [О браузерах](./5-browser-extension/1-about-browsers/README.md) | Jen | +| 13 | [Экологичное расширение для браузера](./5-browser-extension/solution/README.md) | Создание формы, вызов API и хранение переменных в локальном хранилище | Создайте элементы JavaScript для расширения браузера, чтобы вызывать API с использованием переменных, хранящихся в локальном хранилище | [API, формы и локальное хранилище](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | +| 14 | [Экологичное расширение для браузера](./5-browser-extension/solution/README.md) | Фоновые процессы в браузере, производительность веба | Используйте фоновые процессы браузера для управления значком расширения; узнайте о производительности веба и оптимизациях | [Фоновые задачи и производительность](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | +| 15 | [Космическая игра](./6-space-game/solution/README.md) | Более сложная разработка игр с использованием JavaScript | Узнайте о наследовании с использованием классов и композиции, а также о паттерне Pub/Sub, готовясь к созданию игры | [Введение в сложную разработку игр](./6-space-game/1-introduction/README.md) | Chris | +| 16 | [Космическая игра](./6-space-game/solution/README.md) | Рисование на canvas | Узнайте о Canvas API, используемом для рисования элементов на экране | [Рисование на canvas](./6-space-game/2-drawing-to-canvas/README.md) | Chris | +| 17 | [Космическая игра](./6-space-game/solution/README.md) | Перемещение элементов по экрану | Узнайте, как элементы могут двигаться с использованием декартовых координат и Canvas API | [Перемещение элементов](./6-space-game/3-moving-elements-around/README.md) | Chris | +| 18 | [Космическая игра](./6-space-game/solution/README.md) | Обнаружение столкновений | Сделайте так, чтобы элементы сталкивались и реагировали друг на друга с использованием нажатий клавиш, добавьте функцию задержки для повышения производительности игры | [Обнаружение столкновений](./6-space-game/4-collision-detection/README.md) | Chris | +| 19 | [Космическая игра](./6-space-game/solution/README.md) | Подсчет очков | Выполняйте математические вычисления на основе статуса и производительности игры | [Подсчет очков](./6-space-game/5-keeping-score/README.md) | Chris | +| 20 | [Космическая игра](./6-space-game/solution/README.md) | Завершение и перезапуск игры | Узнайте о завершении и перезапуске игры, включая очистку ресурсов и сброс значений переменных | [Условие завершения](./6-space-game/6-end-condition/README.md) | Chris | +| 21 | [Банковское приложение](./7-bank-project/solution/README.md) | HTML-шаблоны и маршруты в веб-приложении | Узнайте, как создать каркас архитектуры многостраничного сайта с использованием маршрутизации и HTML-шаблонов | [HTML-шаблоны и маршруты](./7-bank-project/1-template-route/README.md) | Yohan | +| 22 | [Банковское приложение](./7-bank-project/solution/README.md) | Создание формы входа и регистрации | Узнайте о создании форм и обработке процедур проверки данных | [Формы](./7-bank-project/2-forms/README.md) | Yohan | +| 23 | [Банковское приложение](./7-bank-project/solution/README.md) | Методы получения и использования данных | Узнайте, как данные поступают в приложение и выходят из него, как их получать, хранить и удалять | [Данные](./7-bank-project/3-data/README.md) | Yohan | +| 24 | [Банковское приложение](./7-bank-project/solution/README.md) | Концепции управления состоянием | Узнайте, как ваше приложение сохраняет состояние и как управлять им программно | [Управление состоянием](./7-bank-project/4-state-management/README.md) | Yohan | +| 25 | [Редактор кода для браузера/VScode](../../8-code-editor) | Работа с VScode | Узнайте, как использовать редактор кода | [Использование редактора кода VScode](./8-code-editor/1-using-a-code-editor/README.md) | Chris | | 26 | [AI Ассистенты](./9-chat-project/README.md) | Работа с AI | Узнайте, как создать собственного AI-ассистента | [Проект AI-ассистента](./9-chat-project/README.md) | Chris | ## 🏫 Педагогика -Наша учебная программа разработана с учетом двух ключевых педагогических принципов: -* обучение на основе проектов -* частые тесты +Наша учебная программа разработана с учетом двух ключевых педагогических принципов: +* обучение на основе проектов +* частые тесты + +Программа обучает основам JavaScript, HTML и CSS, а также последним инструментам и техникам, которые используют современные веб-разработчики. Студенты получат возможность практического опыта, создавая игру на скорость печати, виртуальный террариум, экологичное расширение для браузера, игру в стиле "космических захватчиков" и банковское приложение для бизнеса. К концу курса студенты получат прочное понимание веб-разработки. + +> 🎓 Вы можете пройти первые несколько уроков этой программы как [Учебный путь](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) на Microsoft Learn! -Программа обучает основам JavaScript, HTML и CSS, а также последним инструментам и техникам, которые используют современные веб-разработчики. Учащиеся получат возможность приобрести практический опыт, создавая игру на скорость печати, виртуальный террариум, экологичное расширение для браузера, игру в стиле "космических захватчиков" и банковское приложение для бизнеса. К концу курса студенты получат прочные знания в области веб-разработки. +Обеспечивая соответствие содержания проектам, процесс становится более увлекательным для студентов, а усвоение концепций усиливается. Мы также написали несколько вводных уроков по основам JavaScript для знакомства с концепциями, сопровождаемых видео из коллекции "[Серия для начинающих: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)", некоторые из авторов которой внесли вклад в эту учебную программу. -> 🎓 Вы можете пройти первые несколько уроков этой программы в формате [Учебного пути](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) на Microsoft Learn! +Кроме того, низкоуровневый тест перед занятием настраивает студента на изучение темы, а второй тест после занятия обеспечивает дальнейшее усвоение материала. Эта учебная программа была разработана как гибкая и увлекательная, и ее можно пройти полностью или частично. Проекты начинаются с простых и становятся все более сложными к концу 12-недельного цикла. -Обеспечивая соответствие содержания учебной программы проектам, процесс обучения становится более увлекательным для студентов, а усвоение концепций усиливается. Мы также подготовили несколько вводных уроков по основам JavaScript для знакомства с концепциями, сопровождаемых видео из коллекции "[Серия для начинающих: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" с участием некоторых авторов этой программы. +Хотя мы намеренно избегали введения фреймворков JavaScript, чтобы сосредоточиться на базовых навыках, необходимых веб-разработчику перед освоением фреймворка, хорошим следующим шагом после завершения этой программы будет изучение Node.js через другую коллекцию видео: "[Серия для начинающих: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)". -Кроме того, тест с низкими ставками перед уроком настраивает студента на изучение темы, а второй тест после урока обеспечивает лучшее усвоение материала. Эта учебная программа была разработана как гибкая и увлекательная, и ее можно пройти полностью или частично. Проекты начинаются с простых и становятся все более сложными к концу 12-недельного цикла. +> Ознакомьтесь с нашими [Правилами поведения](CODE_OF_CONDUCT.md) и [Руководством по внесению изменений](CONTRIBUTING.md). Мы приветствуем ваши конструктивные отзывы! -Хотя мы намеренно избегали введения фреймворков JavaScript, чтобы сосредоточиться на базовых навыках, необходимых веб-разработчику до освоения фреймворков, хорошим следующим шагом после завершения этой программы будет изучение Node.js через другую коллекцию видео: "[Серия для начинающих: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)". -> Ознакомьтесь с нашими [Правилами поведения](CODE_OF_CONDUCT.md) и руководством по [участию](CONTRIBUTING.md). Мы будем рады вашим конструктивным отзывам! +## 🧭 Оффлайн-доступ -## 🧭 Доступ оффлайн +Вы можете запустить эту документацию оффлайн, используя [Docsify](https://docsify.js.org/#/). Форкните этот репозиторий, [установите Docsify](https://docsify.js.org/#/quickstart) на вашем локальном компьютере, а затем в корневой папке этого репозитория введите `docsify serve`. Веб-сайт будет доступен на порту 3000 вашего локального хоста: `localhost:3000`. -Вы можете запустить эту документацию оффлайн, используя [Docsify](https://docsify.js.org/#/). Форкните этот репозиторий, [установите Docsify](https://docsify.js.org/#/quickstart) на вашем локальном компьютере, а затем в корневой папке этого репозитория введите `docsify serve`. Веб-сайт будет доступен на порту 3000 вашего локального хоста: `localhost:3000`. +## 📘 PDF -## 📘 PDF +PDF всех уроков можно найти [здесь](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf). -PDF всех уроков можно найти [здесь](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf). -## 🎒 Другие курсы +## 🎒 Другие курсы -Наша команда создает и другие курсы! Ознакомьтесь: +Наша команда создает и другие курсы! Ознакомьтесь: -### Azure / Edge / MCP / Agents -[![AZD для начинающих](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst) + +### Azure / Edge / MCP / Agents +[![AZD для начинающих](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst) [![Edge AI для начинающих](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst) [![MCP для начинающих](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst) [![AI Agents для начинающих](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst) @@ -223,7 +224,7 @@ PDF всех уроков можно найти [здесь](https://microsoft.g ### Основное обучение [![Машинное обучение для начинающих](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst) -[![Data Science для начинающих](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst) +[![Наука о данных для начинающих](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst) [![ИИ для начинающих](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst) [![Кибербезопасность для начинающих](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung) [![Веб-разработка для начинающих](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst) @@ -240,19 +241,21 @@ PDF всех уроков можно найти [здесь](https://microsoft.g ## Получение помощи -Если вы столкнулись с трудностями или у вас есть вопросы о создании приложений на основе ИИ, присоединяйтесь: +Если вы столкнулись с трудностями или у вас есть вопросы о создании приложений с ИИ, присоединяйтесь к обсуждениям с другими учащимися и опытными разработчиками о MCP. Это поддерживающее сообщество, где приветствуются вопросы и свободно делятся знаниями. -[![Discord Azure AI Foundry](https://img.shields.io/badge/Discord-Azure_AI_Foundry_Community_Discord-blue?style=for-the-badge&logo=discord&color=5865f2&logoColor=fff)](https://aka.ms/foundry/discord) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) Если у вас есть отзывы о продукте или ошибки при разработке, посетите: -[![Форум разработчиков Azure AI Foundry](https://img.shields.io/badge/GitHub-Azure_AI_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) +[![Microsoft Foundry Developer Forum](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) ## Лицензия -Этот репозиторий лицензирован в соответствии с лицензией MIT. Подробнее см. в файле [LICENSE](../../LICENSE). +Этот репозиторий лицензирован под лицензией MIT. Подробнее смотрите в файле [LICENSE](../../LICENSE). --- + **Отказ от ответственности**: -Этот документ был переведен с использованием сервиса автоматического перевода [Co-op Translator](https://github.com/Azure/co-op-translator). Хотя мы стремимся к точности, пожалуйста, учитывайте, что автоматические переводы могут содержать ошибки или неточности. Оригинальный документ на его родном языке следует считать авторитетным источником. Для получения критически важной информации рекомендуется профессиональный перевод человеком. Мы не несем ответственности за любые недоразумения или неправильные интерпретации, возникающие в результате использования данного перевода. \ No newline at end of file +Этот документ был переведен с помощью сервиса автоматического перевода [Co-op Translator](https://github.com/Azure/co-op-translator). Хотя мы стремимся к точности, пожалуйста, учитывайте, что автоматические переводы могут содержать ошибки или неточности. Оригинальный документ на его родном языке следует считать авторитетным источником. Для получения критически важной информации рекомендуется профессиональный перевод человеком. Мы не несем ответственности за любые недоразумения или неправильные интерпретации, возникшие в результате использования этого перевода. + \ No newline at end of file diff --git a/translations/tr/1-getting-started-lessons/2-github-basics/README.md b/translations/tr/1-getting-started-lessons/2-github-basics/README.md index 0dd1910e..904ef4db 100644 --- a/translations/tr/1-getting-started-lessons/2-github-basics/README.md +++ b/translations/tr/1-getting-started-lessons/2-github-basics/README.md @@ -1,19 +1,19 @@ # GitHub'a Giriş -Merhaba, geleceğin geliştiricisi! 👋 Dünyanın dört bir yanındaki milyonlarca kodlayıcıya katılmaya hazır mısın? Seni GitHub ile tanıştırmak için gerçekten çok heyecanlıyım – bunu programcılar için bir sosyal medya platformu gibi düşün, ama öğle yemeği fotoğraflarını paylaşmak yerine kodlarımızı paylaşıyor ve birlikte inanılmaz şeyler inşa ediyoruz! +Merhaba, geleceğin geliştiricisi! 👋 Dünyanın dört bir yanındaki milyonlarca kodlayıcıya katılmaya hazır mısın? Seni GitHub ile tanıştırmak için gerçekten çok heyecanlıyım – bunu programcılar için bir sosyal medya platformu gibi düşün, ama öğle yemeği fotoğraflarını paylaşmak yerine kod paylaşıyoruz ve birlikte inanılmaz şeyler inşa ediyoruz! -Beni gerçekten hayrete düşüren şey şu: telefonundaki her uygulama, ziyaret ettiğin her web sitesi ve kullanmayı öğreneceğin çoğu araç, GitHub gibi platformlarda iş birliği yapan geliştirici ekipler tarafından oluşturuldu. Sevdiğin o müzik uygulaması mı? Senin gibi biri ona katkıda bulundu. Elinden bırakamadığın o oyun mu? Evet, muhtemelen GitHub iş birliğiyle yapıldı. Ve şimdi SEN bu harika topluluğun bir parçası olmayı öğreneceksin! +Beni gerçekten hayrete düşüren şey şu: telefonundaki her uygulama, ziyaret ettiğin her web sitesi ve kullanmayı öğreneceğin çoğu araç, GitHub gibi platformlarda işbirliği yapan geliştirici ekipler tarafından oluşturuldu. Sevdiğin o müzik uygulaması mı? Senin gibi biri ona katkıda bulundu. Elinden bırakamadığın o oyun? Evet, muhtemelen GitHub işbirliğiyle yapıldı. Ve şimdi SEN bu harika topluluğun bir parçası olmayı öğreneceksin! -Bunun başlangıçta biraz karmaşık görünebileceğini biliyorum – ilk GitHub sayfama bakıp "Bu ne anlama geliyor?" diye düşündüğümü hatırlıyorum. Ama işin güzel yanı şu: her bir geliştirici tam olarak senin şu anda bulunduğun noktadan başladı. Bu dersin sonunda, kendi GitHub deposuna (bulutta kişisel proje vitrinine) sahip olacaksın ve çalışmalarını nasıl kaydedeceğini, başkalarıyla nasıl paylaşacağını ve milyonlarca insanın kullandığı projelere nasıl katkıda bulunacağını öğreneceksin. +Başta bu biraz fazla gibi gelebilir – açıkçası, ilk GitHub sayfama bakarken "Bu ne anlama geliyor ki?" diye düşündüğümü hatırlıyorum. Ama işin güzel yanı şu: her bir geliştirici tam olarak şu anda senin olduğun yerde başladı. Bu dersin sonunda, kendi GitHub deposuna (bulutta kişisel proje vitrinini düşün) sahip olacaksın ve çalışmalarını nasıl kaydedeceğini, başkalarıyla nasıl paylaşacağını ve milyonlarca insanın kullandığı projelere nasıl katkıda bulunacağını öğreneceksin. Bu yolculuğu birlikte, adım adım gerçekleştireceğiz. Acele yok, baskı yok – sadece sen, ben ve birazdan en iyi arkadaşların olacak gerçekten harika araçlar! @@ -22,29 +22,28 @@ Bu yolculuğu birlikte, adım adım gerçekleştireceğiz. Acele yok, baskı yok ```mermaid journey - title Your GitHub Adventure Today - section Setup - Install Git: 4: You - Create Account: 5: You - First Repository: 5: You - section Master Git - Local Changes: 4: You - Commits & Pushes: 5: You - Branching: 4: You - section Collaborate - Fork Projects: 4: You - Pull Requests: 5: You - Open Source: 5: You + title Bugünkü GitHub Maceranız + section Kurulum + Git'i Yükle: 4: Sen + Hesap Oluştur: 5: Sen + İlk Depo: 5: Sen + section Git'i Öğren + Yerel Değişiklikler: 4: Sen + Commit'ler ve Push'lar: 5: Sen + Dallanma: 4: Sen + section İşbirliği + Projeleri Çatallama: 4: Sen + Pull Request'ler: 5: Sen + Açık Kaynak: 5: Sen ``` - -## Ders Öncesi Test -[Ders öncesi test](https://ff-quizzes.netlify.app) +## Ders Öncesi Quiz +[Ders öncesi quiz](https://ff-quizzes.netlify.app) ## Giriş Heyecan verici şeylere dalmadan önce, bilgisayarını biraz GitHub büyüsü için hazırlayalım! Bunu bir şaheser yaratmadan önce sanat malzemelerini düzenlemek gibi düşün – doğru araçlara sahip olmak her şeyi çok daha kolay ve eğlenceli hale getirir. -Her bir kurulum adımını seninle birlikte tek tek geçeceğim ve ilk bakışta göründüğü kadar korkutucu olmadığını garanti ediyorum. Bir şey hemen anlam ifade etmiyorsa, bu tamamen normal! İlk geliştirme ortamımı kurduğumu ve eski hiyeroglifleri okumaya çalışıyormuş gibi hissettiğimi hatırlıyorum. Her bir geliştirici tam olarak senin şu anda bulunduğun noktada oldu, doğru yapıp yapmadığını merak etti. Spoiler: Eğer burada öğreniyorsan, zaten doğru yapıyorsun! 🌟 +Her bir kurulum adımını bizzat seninle birlikte geçeceğim ve ilk bakışta göründüğü kadar korkutucu olmadığını garanti ederim. Bir şey hemen anlam ifade etmiyorsa, bu tamamen normal! İlk geliştirme ortamımı kurarken kendimi antik hiyeroglifleri okumaya çalışıyormuş gibi hissettiğimi hatırlıyorum. Her bir geliştirici tam olarak şu anda senin olduğun yerde oldu, doğru yapıp yapmadığını merak ederek. Spoiler: Eğer burada öğreniyorsan, zaten doğru yapıyorsun! 🌟 Bu derste şunları ele alacağız: @@ -54,16 +53,16 @@ Bu derste şunları ele alacağız: ### Ön Koşullar -Bilgisayarını biraz GitHub büyüsü için hazırlayalım! Endişelenme – bu kurulum sadece bir kez yapman gereken bir şey ve ardından tüm kodlama yolculuğun için hazır olacaksın. +Bilgisayarını biraz GitHub büyüsü için hazırlayalım! Endişelenme – bu kurulum yalnızca bir kez yapman gereken bir şey ve ardından tüm kodlama yolculuğun için hazır olacaksın. -Tamam, temelden başlayalım! Öncelikle Git'in bilgisayarında zaten mevcut olup olmadığını kontrol etmemiz gerekiyor. Git, kodunda yaptığın her değişikliği hatırlayan süper zeki bir asistan gibi – her iki saniyede bir Ctrl+S tuşuna basmaktan çok daha iyi (hepimiz oradaydık!). +Tamam, temelden başlayalım! Öncelikle Git'in bilgisayarında zaten takılıyor olup olmadığını kontrol etmemiz gerekiyor. Git, kodunda yaptığın her değişikliği hatırlayan süper zeki bir asistan gibi – her iki saniyede bir Ctrl+S'ye panikle basmaktan çok daha iyi (hepimiz orada bulunduk!). -Git'in zaten kurulu olup olmadığını görmek için terminaline şu sihirli komutu yaz: +Git'in zaten yüklü olup olmadığını görmek için terminaline şu sihirli komutu yaz: `git --version` -Eğer Git henüz orada değilse, endişelenme! Sadece [Git'i indir](https://git-scm.com/downloads) ve al. Kurulum tamamlandıktan sonra, Git'i sana düzgün bir şekilde tanıtmamız gerekiyor: +Eğer Git henüz orada değilse, endişelenme! Sadece [Git'i indir](https://git-scm.com/downloads) ve al. Yükledikten sonra, Git'i düzgün bir şekilde tanıtmalıyız: -> 💡 **İlk Kurulum**: Bu komutlar Git'e kim olduğunu söyler. Bu bilgi yaptığın her bir commit'e eklenir, bu yüzden paylaşmaktan rahat olduğun bir isim ve e-posta seç. +> 💡 **İlk Kurulum**: Bu komutlar Git'e kim olduğunu söyler. Bu bilgi yaptığın her bir commit'e eklenir, bu yüzden kamuya açık paylaşmaktan rahat olduğun bir isim ve e-posta seç. ```bash git config --global user.name "your-name" @@ -77,19 +76,19 @@ git config --list Ayrıca bir GitHub hesabına, bir kod düzenleyiciye (örneğin Visual Studio Code) ve terminalini (veya: komut istemini) açman gerekecek. -[github.com](https://github.com/) adresine gidip henüz yapmadıysan bir hesap oluştur veya giriş yap ve profilini doldur. +[github.com](https://github.com/) adresine gidip bir hesap oluşturabilir veya giriş yapıp profilini doldurabilirsin. -💡 **Modern ipucu**: [SSH anahtarları](https://docs.github.com/en/authentication/connecting-to-github-with-ssh) kurmayı veya [GitHub CLI](https://cli.github.com/) kullanmayı düşün, böylece şifreler olmadan daha kolay kimlik doğrulama yapabilirsin. +💡 **Modern ipucu**: Daha kolay kimlik doğrulama için [SSH anahtarları](https://docs.github.com/en/authentication/connecting-to-github-with-ssh) ayarlamayı veya [GitHub CLI](https://cli.github.com/) kullanmayı düşün. ✅ GitHub dünyadaki tek kod deposu değil; başka seçenekler de var, ancak GitHub en bilinenidir. ### Hazırlık -Bilgisayarında (laptop veya PC) bir kod projesi içeren bir klasöre ve başkalarının projelerine nasıl katkıda bulunulacağını göstermek için bir örnek olarak hizmet edecek bir GitHub'da halka açık bir depoya ihtiyacın olacak. +Yerel bilgisayarında (laptop veya PC) bir kod projesi içeren bir klasöre ve başkalarının projelerine nasıl katkıda bulunulacağını göstermek için bir örnek olarak hizmet edecek bir GitHub'da halka açık bir depoya ihtiyacın olacak. ### Kodunu Güvende Tutmak -Bir an için güvenlikten bahsedelim – ama endişelenme, seni korkutacak şeylerle bunaltmayacağız! Bu güvenlik uygulamalarını arabayı veya evi kilitlemek gibi düşün. Basit alışkanlıklar haline gelir ve çalışmalarını korur. +Bir an için güvenlikten bahsedelim – ama endişelenme, seni korkutucu şeylerle bunaltmayacağız! Bu güvenlik uygulamalarını arabayı veya evi kilitlemek gibi düşün. Bunlar basit alışkanlıklar haline gelir ve çalışmalarını korur. GitHub ile çalışırken, baştan itibaren modern ve güvenli yolları göstereceğiz. Bu şekilde, kodlama kariyerin boyunca sana iyi hizmet edecek iyi alışkanlıklar geliştireceksin. @@ -97,20 +96,20 @@ GitHub ile çalışırken güvenlik en iyi uygulamalarını takip etmek önemlid | Güvenlik Alanı | En İyi Uygulama | Neden Önemlidir | |----------------|----------------|-----------------| -| **Kimlik Doğrulama** | SSH anahtarları veya Kişisel Erişim Jetonları kullan | Şifreler daha az güvenlidir ve aşamalı olarak kaldırılıyor | +| **Kimlik Doğrulama** | SSH anahtarları veya Kişisel Erişim Tokenları kullan | Şifreler daha az güvenlidir ve aşamalı olarak kaldırılıyor | | **İki Faktörlü Kimlik Doğrulama** | GitHub hesabında 2FA'yı etkinleştir | Hesap korumasına ekstra bir katman ekler | | **Depo Güvenliği** | Hassas bilgileri asla commit etme | API anahtarları ve şifreler asla halka açık depolarda olmamalıdır | -| **Bağımlılık Yönetimi** | Güncellemeler için Dependabot'u etkinleştir | Bağımlılıklarını güvenli ve güncel tutar | +| **Bağımlılık Yönetimi** | Dependabot'u güncellemeler için etkinleştir | Bağımlılıklarını güvenli ve güncel tutar | > ⚠️ **Kritik Güvenlik Hatırlatması**: API anahtarlarını, şifreleri veya diğer hassas bilgileri hiçbir depoya commit etme. Hassas verileri korumak için ortam değişkenlerini ve `.gitignore` dosyalarını kullan. **Modern Kimlik Doğrulama Ayarı:** ```bash -# Generate SSH key (modern ed25519 algorithm) +# SSH anahtarı oluştur (modern ed25519 algoritması) ssh-keygen -t ed25519 -C "your_email@example.com" -# Set up Git to use SSH +# Git'i SSH kullanacak şekilde ayarla git remote set-url origin git@github.com:username/repository.git ``` @@ -118,47 +117,46 @@ git remote set-url origin git@github.com:username/repository.git --- -## Kodunu Profesyonel Gibi Yönetmek +## Kodunu Profesyonelce Yönetmek -Tamam, İŞTE işler gerçekten heyecan verici hale geliyor! 🎉 Kodunu profesyoneller gibi nasıl takip edip yöneteceğini öğrenmek üzereyiz ve dürüst olmak gerekirse, öğretmeyi en sevdiğim şeylerden biri bu çünkü gerçekten oyunun kurallarını değiştiriyor. +Tamam, İŞTE burası gerçekten heyecan verici oluyor! 🎉 Kodunu profesyoneller gibi nasıl takip edip yöneteceğini öğrenmek üzereyiz ve dürüst olmak gerekirse, bu öğretmeyi en sevdiğim şeylerden biri çünkü gerçekten oyunun kurallarını değiştiriyor. -Şöyle düşün: harika bir hikaye yazıyorsun ve her taslağı, her parlak düzenlemeyi ve her "bekle, bu dahice!" anını takip etmek istiyorsun. Git tam olarak bunu kodun için yapar! Her şeyi hatırlayan inanılmaz bir zaman yolculuğu not defteri gibi – her tuş vuruşu, her değişiklik, her "aman, her şeyi bozdu" anı ki bunu anında geri alabilirsin. +Şunu hayal et: harika bir hikaye yazıyorsun ve her taslağı, her parlak düzenlemeyi ve her "bekle, bu dahice!" anını takip etmek istiyorsun. Git tam olarak bunu kodun için yapar! Her şeyi hatırlayan inanılmaz bir zaman yolculuğu defteri gibi – her tuş vuruşu, her değişiklik, her "aman, her şeyi bozdu" anı ki anında geri alabilirsin. -Dürüst olacağım – bu başlangıçta biraz bunaltıcı gelebilir. Başladığımda "Neden dosyalarımı normal şekilde kaydedemiyorum ki?" diye düşünmüştüm. Ama bana güven: Git senin için anlam kazandığında (ve kazanacak!), "Bunu nasıl yapmadan kod yazdım?" diye düşüneceğin o ampul anlarından birini yaşayacaksın. Bu, her zaman yürüyerek gittiğin bir dünyada uçabileceğini keşfetmek gibi! +Dürüst olacağım – bu başta biraz bunaltıcı gelebilir. Başladığımda "Neden dosyalarımı normal şekilde kaydedemiyorum ki?" diye düşündüm. Ama bana güven: Git senin için anlam kazandığında (ve kazanacak!), "Bunu nasıl yapmadan kod yazdım ki?" diyeceğin o ampul anlarından birini yaşayacaksın. Sanki her zaman yürüyerek gittiğin yerde uçabileceğini keşfetmek gibi! -Diyelim ki yerel olarak bir kod projesi içeren bir klasörün var ve ilerlemeni git – versiyon kontrol sistemi – kullanarak takip etmek istiyorsun. Bazı insanlar git kullanmayı gelecekteki kendine aşk mektubu yazmakla karşılaştırır. Commit mesajlarını günler, haftalar veya aylar sonra okuduğunda neden bir karar verdiğini hatırlayabilir veya bir değişikliği "geri alabilirsin" – yani, iyi "commit mesajları" yazdığında. +Diyelim ki yerel olarak bir kod projesi içeren bir klasörün var ve ilerlemeni git – versiyon kontrol sistemi – kullanarak takip etmek istiyorsun. Bazı insanlar git kullanmayı gelecekteki kendine bir aşk mektubu yazmaya benzetir. Commit mesajlarını günler, haftalar veya aylar sonra okuduğunda neden bir karar verdiğini hatırlayabilir veya bir değişikliği "geri alabilirsin" – yani, iyi "commit mesajları" yazdığında. ```mermaid flowchart TD - A[📁 Your Project Files] --> B{Is it a Git Repository?} - B -->|No| C[git init] - B -->|Yes| D[Make Changes] + A[📁 Proje Dosyalarınız] --> B{Bu bir Git Deposu mu?} + B -->|Hayır| C[git init] + B -->|Evet| D[Değişiklik Yap] C --> D D --> E[git add .] - E --> F["git commit -m 'message'"] + E --> F["git commit -m 'mesaj'"] F --> G[git push] - G --> H[🌟 Code on GitHub!] + G --> H[🌟 Kod GitHub'da!] - H --> I{Want to collaborate?} - I -->|Yes| J[Fork & Clone] - I -->|No| D - J --> K[Create Branch] - K --> L[Make Changes] + H --> I{İşbirliği yapmak ister misiniz?} + I -->|Evet| J[Fork & Clone] + I -->|Hayır| D + J --> K[Dal Oluştur] + K --> L[Değişiklik Yap] L --> M[Pull Request] - M --> N[🎉 Contributing!] + M --> N[🎉 Katkıda Bulunma!] style A fill:#fff59d style H fill:#c8e6c9 style N fill:#ff4081,color:#fff ``` - ### Görev: İlk Deponu Oluştur! > 🎯 **Görev (ve senin için çok heyecanlıyım!)**: İlk GitHub deponu birlikte oluşturacağız! Burada işimiz bittiğinde, kodunun yaşadığı internetin kendi küçük köşesine sahip olacaksın ve ilk "commit"ini yapmış olacaksın (bu, geliştirici dilinde çalışmalarını gerçekten akıllı bir şekilde kaydetmek anlamına gelir). > -> Bu gerçekten özel bir an – küresel geliştiriciler topluluğuna resmi olarak katılmak üzeresin! İlk depomu oluşturmanın heyecanını ve "Vay, gerçekten bunu yapıyorum!" diye düşünmeyi hâlâ hatırlıyorum. +> Bu gerçekten özel bir an – küresel geliştiriciler topluluğuna resmi olarak katılmak üzeresin! İlk depomu oluşturmanın heyecanını ve "Vay, gerçekten bunu yapıyorum!" diye düşünmeyi hala hatırlıyorum. -Bu macerayı birlikte, adım adım inceleyelim. Her bir bölümü sindirerek ilerle – acele etmenin bir ödülü yok ve her bir adımın anlamlı olacağına söz veriyorum. Unutma, hayranlık duyduğun her kodlama yıldızı bir zamanlar tam olarak senin şu anda bulunduğun yerdeydi, ilk deposunu oluşturmak üzereydi. Bu ne kadar havalı, değil mi? +Bu macerayı birlikte, adım adım geçelim. Her bir bölümü acele etmeden tamamla – acele etmenin ödülü yok ve her bir adımın anlamlı olacağına söz veriyorum. Unutma, hayranlık duyduğun her kodlama yıldızı bir zamanlar tam olarak senin olduğun yerdeydi, ilk deposunu oluşturmak üzereydi. Ne kadar havalı, değil mi? > Videoyu izle > @@ -166,13 +164,13 @@ Bu macerayı birlikte, adım adım inceleyelim. Her bir bölümü sindirerek ile **Bunu Birlikte Yapalım:** -1. **GitHub'da deponu oluştur**. GitHub.com'a git ve o parlak yeşil **Yeni** düğmesini (veya sağ üst köşedeki **+** işaretini) ara. Tıklayıp **Yeni depo** seçeneğini seç. +1. **GitHub'da deponu oluştur**. GitHub.com'a git ve o parlak yeşil **Yeni** düğmesini (veya sağ üst köşedeki **+** işaretini) ara. Tıklayın ve **Yeni depo** seçeneğini seçin. İşte yapman gerekenler: 1. Depoya bir isim ver – senin için anlamlı bir şey olsun! 1. İstersen bir açıklama ekle (bu, başkalarının projenin ne hakkında olduğunu anlamasına yardımcı olur) 1. Herkesin görebileceği bir depo (halka açık) mı yoksa sadece senin için (özel) mi istediğine karar ver - 1. README dosyası ekleme kutusunu işaretlemeni öneririm – bu, projenin ön sayfası gibidir + 1. README dosyası eklemek için kutuyu işaretlemeni öneririm – bu, projenin ön sayfası gibidir 1. **Depo oluştur** düğmesine tıkla ve kutla – ilk deponu oluşturdun! 🎉 2. **Proje klasörüne git**. Şimdi terminalini açalım (endişelenme, göründüğü kadar korkutucu değil!). Bilgisayarımıza proje dosyalarının nerede olduğunu söylememiz gerekiyor. Şu komutu yaz: @@ -192,20 +190,20 @@ Bu macerayı birlikte, adım adım inceleyelim. Her bir bölümü sindirerek ile git init ``` - **İşte olanlar (oldukça havalı şeyler!):** - - Git, projenizde gizli bir `.git` klasörü oluşturdu – bunu göremeyeceksiniz ama orada! - - Normal klasörünüz artık yaptığınız her değişikliği takip edebilen bir "depo" oldu - - Bunu, klasörünüze her şeyi hatırlama süper gücü vermek gibi düşünün + **İşte olanlar (çok havalı şeyler!):** + - Git, projenin içinde gizli bir `.git` klasörü oluşturdu – bunu görmeyeceksin, ama orada! + - Normal klasörün artık yaptığın her değişikliği takip edebilen bir "depo" oldu + - Bunu, klasörüne her şeyi hatırlama süper gücü vermek gibi düşün -4. **Neler olduğunu kontrol et**. Şimdi Git'in projeniz hakkında ne düşündüğünü görelim: +4. **Neler olduğunu kontrol et**. Git'in şu anda projen hakkında ne düşündüğünü görelim: ```bash git status ``` - **Git'in size söylediklerini anlamak:** + **Git'in sana söylediklerini anlama:** - Şuna benzer bir şey görebilirsiniz: + Şuna benzer bir şey görebilirsin: ```output Changes not staged for commit: @@ -216,101 +214,102 @@ Bu macerayı birlikte, adım adım inceleyelim. Her bir bölümü sindirerek ile modified: file2.txt ``` - **Panik yapmayın! İşte bunun anlamı:** - - **Kırmızı** renkli dosyalar, değişiklikleri olan ancak henüz kaydetmeye hazır olmayan dosyalardır - - **Yeşil** renkli dosyalar (gördüğünüzde) kaydetmeye hazırdır - - Git, bir sonraki adımda tam olarak ne yapabileceğinizi söyleyerek yardımcı oluyor + **Panik yapma! İşte bunun anlamı:** + - **Kırmızı** dosyalar, değişiklikleri olan ama henüz kaydetmeye hazır olmayan dosyalardır + - **Yeşil** dosyalar (gördüğünde) kaydetmeye hazırdır + - Git, bir sonraki adımda tam olarak ne yapabileceğini söyleyerek yardımcı oluyor - > 💡 **Profesyonel ipucu**: `git status` komutu en iyi arkadaşınız! Ne olup bittiği konusunda kafanız karıştığında kullanın. Git'e "Hey, şu anda durum nedir?" diye sormak gibi. + > 💡 **Profesyonel ipucu**: `git status` komutu en iyi arkadaşın! Ne olup bittiğinden emin olmadığında kullan. Git'e "Hey, şu anda durum nedir?" diye sormak gibi. -5. **Dosyalarınızı kaydetmeye hazır hale getirin** (bu "sahneleme" olarak adlandırılır): +5. **Dosyalarını kaydetmeye hazır hale getir** (buna "sahneleme" denir): ```bash git add . ``` - **Az önce yaptığımız şey:** + **Az önce ne yaptık:** - Git'e "Hey, bir sonraki kayıtta TÜM dosyalarımı dahil etmek istiyorum" dedik - `.` bu klasördeki "her şey" demek gibi - - Şimdi dosyalarınız "sahnelendi" ve bir sonraki adım için hazır + - Şimdi dosyaların "sahnelendi" ve bir sonraki adıma hazır - **Daha seçici olmak ister misiniz?** Sadece belirli dosyaları ekleyebilirsiniz: + **Daha seçici mi olmak istiyorsun?** Sadece belirli dosyaları ekleyebilirsin: ```bash git add [file or folder name] ``` - **Bunu neden yapmak isteyebilirsiniz?** - - Bazen ilgili değişiklikleri birlikte kaydetmek istersiniz - - Çalışmanızı mantıksal parçalara ayırmanıza yardımcı olur + **Bunu neden yapmak isteyebilirsin?** + - Bazen ilgili değişiklikleri birlikte kaydetmek istersin + - Çalışmanı mantıklı parçalara ayırmana yardımcı olur - Ne zaman ve neyin değiştiğini anlamayı kolaylaştırır - **Fikriniz mi değişti?** Endişelenmeyin! Dosyaları şu şekilde sahne dışı bırakabilirsiniz: + **Fikrini mi değiştirdin?** Endişelenme! Dosyaları sahneleme dışına şu şekilde çıkarabilirsin: ```bash - # Unstage everything + # Her şeyi sahneden kaldır git reset - # Unstage just one file + # Sadece bir dosyayı sahneden kaldır git reset [file name] ``` - Endişelenmeyin – bu, çalışmanızı silmez, sadece dosyaları "kaydetmeye hazır" yığından çıkarır. + Endişelenme – bu çalışmanı silmez, sadece dosyaları "kaydetmeye hazır" yığından çıkarır. -6. **Çalışmanızı kalıcı olarak kaydedin** (ilk commit'inizi yapın!): +6. **Çalışmanı kalıcı olarak kaydet** (ilk commit'ini yap!): ```bash git commit -m "first commit" ``` - **🎉 Tebrikler! İlk commit'inizi yaptınız!** + **🎉 Tebrikler! İlk commit'ini yaptın!** - **Az önce olan şey:** - - Git, bu tam anda sahnelenmiş tüm dosyaların bir "anlık görüntüsünü" aldı - - "ilk commit" mesajınız bu kayıt noktasının ne hakkında olduğunu açıklıyor - - Git bu anlık görüntüye her zaman bulabileceğiniz benzersiz bir kimlik verdi - - Projenizin geçmişini takip etmeye resmi olarak başladınız! + **İşte olanlar:** + - Git, tam bu anda sahnelenmiş tüm dosyalarının bir "anlık görüntüsünü" aldı + - Commit mesajın "ilk commit" bu kaydetme noktasının ne hakkında olduğunu açıklar + - Git bu anlık görüntüye benzersiz bir kimlik verdi, böylece her zaman bulabilirsin + - Projenin geçmişini takip etmeye resmi olarak başladın! - > 💡 **Gelecekteki commit mesajları**: Bir sonraki commit'leriniz için daha açıklayıcı olun! "şeyleri güncelledim" yerine "Ana sayfaya iletişim formu ekle" veya "Gezinme menüsü hatasını düzelt" gibi bir şey deneyin. Gelecekteki kendinize teşekkür edeceksiniz! + > 💡 **Gelecekteki commit mesajları**: Bir sonraki commit'lerin için daha açıklayıcı ol! "Güncellenmiş şeyler" yerine "Ana sayfaya iletişim formu ekle" veya "Navigasyon menüsü hatasını düzelt" gibi bir şeyler yaz. Gelecekteki kendin sana teşekkür edecek! 7. **Yerel projenizi GitHub'a bağlayın**. Şu anda projeniz yalnızca bilgisayarınızda var. Onu GitHub deponuza bağlayalım, böylece dünyayla paylaşabilirsiniz! - Öncelikle, GitHub depo sayfanıza gidin ve URL'yi kopyalayın. Sonra buraya geri dönüp şunu yazın: + Öncelikle GitHub depo sayfanıza gidin ve URL'yi kopyalayın. Sonra buraya geri dönün ve şunu yazın: ```bash git remote add origin https://github.com/username/repository_name.git ``` - (Bu URL'yi gerçek depo URL'nizle değiştirin!) -**Ne Yaptık:** -- Yerel projeniz ile GitHub deposu arasında bir bağlantı oluşturduk -- "Origin" sadece GitHub deponuz için bir takma ad – tıpkı telefonunuza bir kişi eklemek gibi -- Artık yerel Git'iniz, kodunuzu paylaşmaya hazır olduğunuzda nereye göndereceğini biliyor + (O URL'yi gerçek depo URL'nizle değiştirin!) + + **Az önce ne yaptık:** + - Yerel projeniz ile GitHub deposu arasında bir bağlantı oluşturduk. + - "Origin" sadece GitHub deponuz için bir takma ad – telefonunuza bir kişi eklemek gibi düşünün. + - Artık yerel Git'iniz, kodunuzu paylaşmaya hazır olduğunuzda nereye göndereceğini biliyor. -💡 **Daha Kolay Yol**: GitHub CLI yüklüyse, bunu tek bir komutla yapabilirsiniz: + 💡 **Daha kolay bir yol**: Eğer GitHub CLI yüklüyse, bunu tek bir komutla yapabilirsiniz: ```bash gh repo create my-repo --public --push --source=. ``` -8. **Kodunuzu GitHub'a Gönderin** (Büyük an!): +8. **Kodunuzu GitHub'a gönderin** (büyük an!): ```bash git push -u origin main ``` -**🚀 İşte bu! Kodunuzu GitHub'a yüklüyorsunuz!** - -**Neler Oluyor:** -- Commit'leriniz bilgisayarınızdan GitHub'a doğru yol alıyor -- `-u` bayrağı, gelecekteki yüklemeleri kolaylaştırmak için kalıcı bir bağlantı kurar -- "main", birincil dalınızın adıdır (ana klasör gibi) -- Bundan sonra, gelecekteki yüklemeler için sadece `git push` yazabilirsiniz! + **🚀 İşte bu! Kodunuzu GitHub'a yüklüyorsunuz!** + + **Neler oluyor:** + - Commit'leriniz bilgisayarınızdan GitHub'a taşınıyor. + - `-u` bayrağı, gelecekteki gönderimler için kalıcı bir bağlantı kurar, böylece daha kolay olur. + - "main" birincil dalınızın adı (ana klasör gibi). + - Bundan sonra, gelecekteki yüklemeler için sadece `git push` yazabilirsiniz! -💡 **Hızlı Not**: Eğer dalınızın adı farklıysa (örneğin "master"), o ismi kullanın. `git branch --show-current` komutuyla kontrol edebilirsiniz. + 💡 **Hızlı not**: Eğer dalınızın adı "master" gibi başka bir şeyse, o adı kullanın. `git branch --show-current` ile kontrol edebilirsiniz. -9. **Yeni Günlük Kodlama Ritminiz** (Bağımlılık yapacak!): +9. **Yeni günlük kodlama ritminiz** (işte bağımlılık yapmaya başladığı yer!): -Bundan sonra, projenizde değişiklik yaptığınızda, bu basit üç adımlı dansı yapacaksınız: + Bundan sonra, projenizde değişiklik yaptığınızda, bu basit üç adımlı dansı yapacaksınız: ```bash git add . @@ -318,115 +317,113 @@ Bundan sonra, projenizde değişiklik yaptığınızda, bu basit üç adımlı d git push ``` -**Bu sizin kodlama ritminiz olacak:** -- Kodunuzda harika değişiklikler yapın ✨ -- `git add` ile sahneye alın ("Hey Git, bu değişikliklere dikkat et!") -- `git commit` ve açıklayıcı bir mesajla kaydedin (gelecekteki siz size teşekkür edecek!) -- Kodunuzu dünyayla paylaşmak için `git push` kullanın 🚀 -- Tekrar edin – cidden, bu nefes almak kadar doğal hale gelecek! + **Bu sizin kodlama ritminiz olacak:** + - Kodunuza harika değişiklikler yapın ✨ + - `git add` ile sahneleyin ("Hey Git, bu değişikliklere dikkat et!") + - `git commit` ile kaydedin ve açıklayıcı bir mesaj ekleyin (gelecekteki siz size teşekkür edecek!) + - `git push` ile dünyayla paylaşın 🚀 + - Tekrar edin – cidden, bu nefes almak kadar doğal hale gelir! -Bu iş akışını seviyorum çünkü bir video oyununda birden fazla kayıt noktası olması gibi. Sevdiğiniz bir değişiklik mi yaptınız? Commit yapın! Riskli bir şey denemek mi istiyorsunuz? Sorun değil – işler ters giderse her zaman son commit'inize geri dönebilirsiniz! + Bu iş akışını seviyorum çünkü bir video oyununda birden fazla kayıt noktası olması gibi. Sevdiğiniz bir değişiklik mi yaptınız? Commit yapın! Riskli bir şey denemek mi istiyorsunuz? Sorun değil – işler ters giderse her zaman son commit'inize geri dönebilirsiniz! -> 💡 **İpucu**: `.gitignore` dosyasını benimsemek isteyebilirsiniz. Bu dosya, GitHub'da takip etmek istemediğiniz dosyaların görünmesini engeller – örneğin, aynı klasörde sakladığınız ancak herkese açık bir depoda yeri olmayan not dosyası gibi. `.gitignore` dosyaları için şablonları [.gitignore templates](https://github.com/github/gitignore) adresinde bulabilir veya [gitignore.io](https://www.toptal.com/developers/gitignore) kullanarak bir tane oluşturabilirsiniz. + > 💡 **İpucu**: `.gitignore` dosyasını benimsemek isteyebilirsiniz, böylece GitHub'da takip etmek istemediğiniz dosyalar görünmez – örneğin, aynı klasörde sakladığınız ama halka açık bir depoda yeri olmayan not dosyası. `.gitignore` dosyaları için şablonları [.gitignore templates](https://github.com/github/gitignore) adresinde bulabilir veya [gitignore.io](https://www.toptal.com/developers/gitignore) kullanarak bir tane oluşturabilirsiniz. ### 🧠 **İlk Depo Kontrolü: Nasıl Hissettiniz?** **Bir an durup kutlayın ve düşünün:** -- Kodunuzun ilk kez GitHub'da göründüğünü görmek nasıl bir histi? -- Hangi adım en kafa karıştırıcıydı ve hangisi şaşırtıcı derecede kolaydı? +- Kodunuzun ilk kez GitHub'da görünmesini görmek nasıl hissettirdi? +- Hangi adım en kafa karıştırıcı geldi ve hangisi şaşırtıcı derecede kolaydı? - `git add`, `git commit` ve `git push` arasındaki farkı kendi kelimelerinizle açıklayabilir misiniz? ```mermaid stateDiagram-v2 - [*] --> LocalFiles: Create project + [*] --> LocalFiles: Proje oluştur LocalFiles --> Staged: git add . Staged --> Committed: git commit Committed --> GitHub: git push - GitHub --> [*]: Success! 🎉 + GitHub --> [*]: Başarılı! 🎉 note right of Staged - Files ready to save + Kaydetmeye hazır dosyalar end note note right of Committed - Snapshot created + Anlık görüntü oluşturuldu end note ``` +> **Unutmayın**: Deneyimli geliştiriciler bile bazen tam komutları unutabilir. Bu iş akışının kas hafızasına dönüşmesi pratik gerektirir – harika gidiyorsunuz! -> **Unutmayın**: Deneyimli geliştiriciler bile bazen tam komutları unutabilir. Bu iş akışını alışkanlık haline getirmek pratik gerektirir – harika gidiyorsunuz! - -#### Modern Git İş Akışları +#### Modern Git iş akışları Bu modern uygulamaları benimsemeyi düşünün: - **Conventional Commits**: `feat:`, `fix:`, `docs:` gibi standart bir commit mesaj formatı kullanın. Daha fazla bilgi için [conventionalcommits.org](https://www.conventionalcommits.org/) adresini ziyaret edin. -- **Atomik Commit'ler**: Her bir commit'in tek bir mantıksal değişikliği temsil etmesini sağlayın. -- **Sık Commit'ler**: Büyük ve seyrek commit'ler yerine, sık sık açıklayıcı mesajlarla commit yapın. +- **Atomic commits**: Her bir commit'in tek bir mantıksal değişikliği temsil etmesini sağlayın. +- **Sık commit'ler**: Büyük ve seyrek commit'ler yerine sık sık açıklayıcı mesajlarla commit yapın. -#### Commit Mesajları +#### Commit mesajları Harika bir Git commit başlık satırı şu cümleyi tamamlar: Eğer uygulanırsa, bu commit yapacaktır. -Başlıkta emir kipini ve geniş zaman kullanın: "değiştir" değil "değiştirildi" veya "değişiklikler". -Başlıkta olduğu gibi, gövdede (isteğe bağlı) de emir kipini ve geniş zaman kullanın. Gövde, değişikliğin nedenini ve önceki davranışla olan farkını içermelidir. Burada `nasıl` değil, `neden` açıklıyorsunuz. +Başlıkta emir kipini ve şimdiki zamanı kullanın: "değiştir" değil "değiştirildi" veya "değiştiriyor". +Başlıkta olduğu gibi, gövdede (isteğe bağlı) de emir kipini ve şimdiki zamanı kullanın. Gövde, değişikliğin motivasyonunu içermeli ve bunu önceki davranışla karşılaştırmalıdır. `neden`i açıklıyorsunuz, `nasıl`ı değil. -✅ GitHub'da biraz dolaşmak için birkaç dakika ayırın. Gerçekten harika bir commit mesajı bulabilir misiniz? Peki ya çok basit bir tane? Sizce bir commit mesajında iletilmesi gereken en önemli ve faydalı bilgi nedir? +✅ GitHub'da biraz gezinmek için birkaç dakika ayırın. Gerçekten harika bir commit mesajı bulabilir misiniz? Çok minimal bir tane bulabilir misiniz? Commit mesajında iletilmesi gereken en önemli ve faydalı bilgilerin neler olduğunu düşünüyorsunuz? -## Diğerleriyle Çalışmak (Eğlenceli Kısım!) +## Başkalarıyla Çalışmak (Eğlenceli Kısım!) -Şapkanızı sıkıca tutun çünkü GİT ve GitHub burada tam anlamıyla büyüleyici hale geliyor! 🪄 Kendi kodunuzu yönetmeyi öğrendiniz, ama şimdi en sevdiğim kısma dalıyoruz – dünyanın dört bir yanından harika insanlarla iş birliği yapmaya. +Şapkanızı tutun çünkü GitHub burada tam anlamıyla büyüleyici hale geliyor! 🪄 Kendi kodunuzu yönetmeyi öğrendiniz, ama şimdi en sevdiğim kısma dalıyoruz – dünyanın dört bir yanından harika insanlarla iş birliği yapmak. -Şunu hayal edin: Yarın uyanıyorsunuz ve Tokyo'dan biri kodunuzu geliştiriyor. Sonra Berlin'den biri takıldığınız bir hatayı düzeltiyor. Öğleden sonra, São Paulo'dan bir geliştirici, hiç düşünmediğiniz bir özellik ekliyor. Bu bilim kurgu değil – bu sadece GitHub evreninde sıradan bir salı günü! +Şöyle hayal edin: yarın uyanıyorsunuz ve Tokyo'daki biri kodunuzu geliştiriyor. Sonra Berlin'deki biri takıldığınız bir hatayı düzeltiyor. Öğleden sonra, São Paulo'daki bir geliştirici sizin hiç düşünmediğiniz bir özellik ekliyor. Bu bilim kurgu değil – bu sadece GitHub evreninde sıradan bir salı! Beni gerçekten heyecanlandıran şey, öğrenmek üzere olduğunuz iş birliği becerileri mi? Google, Microsoft ve en sevdiğiniz girişimlerdeki ekiplerin her gün kullandığı TAM olarak aynı iş akışları. Sadece havalı bir araç öğrenmiyorsunuz – tüm yazılım dünyasının birlikte çalışmasını sağlayan gizli dili öğreniyorsunuz. -Cidden, birinin ilk pull request'inizi birleştirdiği anın heyecanını yaşadığınızda, geliştiricilerin açık kaynak konusunda neden bu kadar tutkulu olduğunu anlayacaksınız. Bu, dünyanın en büyük, en yaratıcı ekip projesinin bir parçası olmak gibi bir şey! +Cidden, birinin ilk pull request'inizi birleştirdiği anın heyecanını yaşadığınızda, geliştiricilerin açık kaynak konusunda neden bu kadar tutkulu olduğunu anlayacaksınız. Dünyanın en büyük, en yaratıcı ekip projesinin bir parçası olmak gibi bir şey! -> Video'yu İzle +> Video'ya göz atın > -> [![Git ve GitHub Temelleri Videosu](https://img.youtube.com/vi/bFCM-PC3cu8/0.jpg)](https://www.youtube.com/watch?v=bFCM-PC3cu8) +> [![Git ve GitHub temel bilgileri video](https://img.youtube.com/vi/bFCM-PC3cu8/0.jpg)](https://www.youtube.com/watch?v=bFCM-PC3cu8) GitHub'a bir şeyler koymanın ana nedeni, diğer geliştiricilerle iş birliği yapmayı mümkün kılmaktı. ```mermaid flowchart LR - A[🔍 Find Project] --> B[🍴 Fork Repository] - B --> C[📥 Clone to Local] - C --> D[🌿 Create Branch] - D --> E[✏️ Make Changes] - E --> F[💾 Commit Changes] - F --> G[📤 Push Branch] - G --> H[🔄 Create Pull Request] - H --> I{Maintainer Review} - I -->|✅ Approved| J[🎉 Merge!] - I -->|❓ Changes Requested| K[📝 Make Updates] + A[🔍 Proje Bul] --> B[🍴 Depoyu Çatalla] + B --> C[📥 Yerel'e Klonla] + C --> D[🌿 Dal Oluştur] + D --> E[✏️ Değişiklik Yap] + E --> F[💾 Değişiklikleri Kaydet] + F --> G[📤 Dalı Gönder] + G --> H[🔄 Çekme İsteği Oluştur] + H --> I{Bakıcı İncelemesi} + I -->|✅ Onaylandı| J[🎉 Birleştir!] + I -->|❓ Değişiklik İstendi| K[📝 Güncellemeler Yap] K --> F - J --> L[🧹 Clean Up Branches] + J --> L[🧹 Dalları Temizle] style A fill:#e3f2fd style J fill:#e8f5e8 style L fill:#fff3e0 ``` +Depo içinde `Insights > Community` bölümüne giderek projenizin önerilen topluluk standartlarına nasıl uyduğunu görebilirsiniz. -Depo sayfanızda `Insights > Community` sekmesine giderek projenizin önerilen topluluk standartlarına nasıl uyduğunu görebilirsiniz. - -Depo sayfanızın profesyonel ve davetkar görünmesini mi istiyorsunuz? Depo sayfanıza gidin ve `Insights > Community` sekmesine tıklayın. Bu harika özellik, projenizin GitHub topluluğunun "iyi depo uygulamaları" olarak kabul ettiği şeylere nasıl uyduğunu gösterir. +Depo'nuzu profesyonel ve davetkar göstermek mi istiyorsunuz? Depo'nuzun içine gidin ve `Insights > Community`'ye tıklayın. Bu harika özellik, projenizin GitHub topluluğunun "iyi depo uygulamaları" olarak gördüğü şeylere nasıl uyduğunu gösterir. -> 🎯 **Projenizi Parlatın**: İyi organize edilmiş bir depo ve iyi belgeler, temiz ve davetkar bir mağaza vitrini gibi. İnsanlara işinize önem verdiğinizi gösterir ve başkalarının katkıda bulunmasını sağlar! +> 🎯 **Projenizi Parlatmak**: İyi organize edilmiş bir depo ve iyi bir dokümantasyon, temiz ve davetkar bir mağaza vitrini gibi. İnsanlara işinize önem verdiğinizi gösterir ve başkalarının katkıda bulunmasını sağlar! -**Bir Depoyu Harika Yapan Şeyler:** +**Bir depoyu harika yapan şeyler:** | Eklenmesi Gereken | Neden Önemli | Size Ne Sağlar | |-------------------|--------------|----------------| | **Açıklama** | İlk izlenim önemlidir! | İnsanlar projenizin ne yaptığını hemen anlar | | **README** | Projenizin ön sayfası | Yeni ziyaretçiler için dostça bir rehber gibi | -| **Katkı Yönergeleri** | Yardımı memnuniyetle karşıladığınızı gösterir | İnsanlar size nasıl yardımcı olabileceklerini tam olarak bilir | -| **Davranış Kuralları** | Dostça bir ortam yaratır | Herkesin katılımını hoş karşılar | +| **Katkı Kuralları** | Yardımı memnuniyetle karşıladığınızı gösterir | İnsanlar size nasıl yardımcı olabileceklerini tam olarak bilir | +| **Davranış Kuralları** | Dostça bir alan yaratır | Herkes katılmak için kendini hoş karşılanmış hisseder | | **Lisans** | Hukuki netlik sağlar | Başkaları kodunuzu nasıl kullanabileceklerini bilir | -| **Güvenlik Politikası** | Sorumlu olduğunuzu gösterir | Profesyonel uygulamaları sergiler | +| **Güvenlik Politikası** | Sorumlu olduğunuzu gösterir | Profesyonel uygulamaları gösterir | -> 💡 **Profesyonel İpucu**: GitHub, bu dosyaların tümü için şablonlar sağlar. Yeni bir depo oluştururken, bu dosyaları otomatik olarak oluşturmak için kutuları işaretleyin. +> 💡 **Pro İpucu**: GitHub bu dosyalar için şablonlar sağlar. Yeni bir depo oluştururken, bu dosyaları otomatik olarak oluşturmak için kutuları işaretleyin. **Keşfedilecek Modern GitHub Özellikleri:** @@ -437,39 +434,39 @@ Depo sayfanızın profesyonel ve davetkar görünmesini mi istiyorsunuz? Depo sa 💬 **Topluluk & Proje Yönetimi:** - **GitHub Discussions** ile sorunların ötesinde topluluk sohbetleri - **GitHub Projects** ile kanban tarzı proje yönetimi -- **Dal koruma kuralları** ile kod kalitesi standartlarını sağlama +- **Dal koruma kuralları** ile kod kalitesi standartlarını uygulama -Tüm bu kaynaklar, yeni ekip üyelerinin işe alım sürecine fayda sağlayacaktır. Ve bunlar genellikle yeni katkıda bulunanların kodunuza bakmadan önce projenizin zamanlarını harcamaya değer olup olmadığını anlamak için baktıkları şeylerdir. +Tüm bu kaynaklar yeni ekip üyelerinin işe alım sürecine fayda sağlayacaktır. Ve bunlar genellikle yeni katkıda bulunanların kodunuza bakmadan önce projenizin doğru yer olup olmadığını anlamak için baktığı şeylerdir. -✅ README dosyaları, hazırlanması zaman alsa da, genellikle meşgul bakımcılar tarafından ihmal edilir. Özellikle açıklayıcı bir örnek bulabilir misiniz? Not: [README dosyaları oluşturmanıza yardımcı olacak bazı araçlar](https://www.makeareadme.com/) var, bunları denemek isteyebilirsiniz. +✅ README dosyaları, hazırlanması zaman alsa da, genellikle meşgul bakımcılar tarafından ihmal edilir. Özellikle açıklayıcı bir örnek bulabilir misiniz? Not: [README dosyaları oluşturmak için araçlar](https://www.makeareadme.com/) var, denemek isteyebilirsiniz. -### Görev: Kod Birleştirme +### Görev: Kod birleştirme -Katkı belgeleri, insanların projeye katkıda bulunmasına yardımcı olur. Hangi tür katkıları aradığınızı ve sürecin nasıl işlediğini açıklar. Katkıda bulunanların GitHub'daki deponuza katkıda bulunabilmeleri için bir dizi adımı takip etmeleri gerekecek: +Katkı belgeleri, insanların projeye katkıda bulunmasına yardımcı olur. Hangi tür katkıları aradığınızı ve sürecin nasıl işlediğini açıklar. Katkıda bulunanlar, GitHub'daki deponuza katkıda bulunabilmek için bir dizi adımı takip etmek zorunda kalacaklar: -1. **Depoyu Fork Etmek**. İnsanların projenizi _fork_ etmelerini isteyebilirsiniz. Fork etmek, GitHub profillerinde deponuzun bir kopyasını oluşturmak anlamına gelir. -1. **Clone**. Buradan projeyi yerel makinelerine _clone_ yapacaklar. -1. **Bir Dal Oluşturun**. Çalışmaları için bir _dal_ oluşturmalarını isteyeceksiniz. -1. **Değişikliklerini bir alana odaklayın**. Katkıda bulunanlardan katkılarını bir seferde bir şeye odaklamalarını isteyin – böylece çalışmalarını _birleştirme_ şansınız daha yüksek olur. Diyelim ki bir hata düzeltmesi yazıyorlar, yeni bir özellik ekliyorlar ve birkaç testi güncelliyorlar – ya 3'ünden sadece 2'sini veya 1'ini uygulamak istiyorsanız ne olur? +1. **Depoyu çatallama** Muhtemelen insanların projenizi _fork_ etmesini isteyeceksiniz. Fork etmek, deponuzun GitHub profillerinde bir kopyasını oluşturmak anlamına gelir. +1. **Klonlama**. Buradan projeyi yerel makinelerine klonlayacaklar. +1. **Dal oluşturma**. Çalışmaları için bir _dal_ oluşturmalarını isteyeceksiniz. +1. **Değişikliklerini bir alana odaklama**. Katkıda bulunanlardan katkılarını bir seferde bir şeye odaklamalarını isteyin – böylece çalışmalarını _birleştirme_ şansınız daha yüksek olur. Diyelim ki bir hata düzeltmesi yazıyorlar, yeni bir özellik ekliyorlar ve birkaç testi güncelliyorlar – ya 3 değişiklikten sadece 2'sini veya 1'ini uygulamak istiyorsanız? -✅ Dalların iyi kod yazma ve gönderme konusunda özellikle kritik olduğu bir durumu hayal edin. Hangi kullanım durumlarını düşünebilirsiniz? +✅ Dalların iyi kod yazma ve gönderme açısından özellikle kritik olduğu bir durumu hayal edin. Hangi kullanım durumlarını düşünebilirsiniz? -> Not, dünyada görmek istediğiniz değişim olun ve kendi çalışmalarınız için de dallar oluşturun. Yaptığınız tüm commit'ler, şu anda "checkout" yaptığınız dalda yapılacaktır. Hangi dalda olduğunuzu görmek için `git status` kullanın. +> Not, dünyada görmek istediğiniz değişim olun ve kendi çalışmalarınız için de dallar oluşturun. Yaptığınız her commit, şu anda "checkout" yaptığınız dalda yapılacaktır. Hangi dalda olduğunuzu görmek için `git status` kullanın. -Bir katkıda bulunan iş akışını inceleyelim. Katkıda bulunanın zaten depoyu _fork_ ettiğini ve _clone_ yaptığını varsayalım, böylece yerel makinelerinde çalışmaya hazır bir Git deposuna sahipler: +Bir katkıda bulunan iş akışını inceleyelim. Katkıda bulunanın zaten depoyu _fork_ ettiğini ve _klonladığını_ varsayalım, böylece yerel makinelerinde çalışmaya hazır bir Git deposu var: -1. **Bir Dal Oluşturun**. Katkıda bulunmayı düşündükleri değişiklikleri içerecek bir dal oluşturmak için `git branch` komutunu kullanın: +1. **Dal oluşturma**. `git branch` komutunu kullanarak katkıda bulunmayı düşündükleri değişiklikleri içerecek bir dal oluşturun: ```bash git branch [branch-name] ``` - > 💡 **Modern Yaklaşım**: Yeni bir dal oluşturup aynı anda ona geçiş yapabilirsiniz: + > 💡 **Modern Yaklaşım**: Yeni bir dal oluşturup ona geçiş yapmak için tek bir komut kullanabilirsiniz: ```bash git switch -c [branch-name] ``` -1. **Çalışma Dalına Geçin**. Belirtilen dala geçin ve çalışma dizinini `git switch` ile güncelleyin: +1. **Çalışma dalına geçiş yapma**. Belirtilen dala geçin ve `git switch` ile çalışma dizinini güncelleyin: ```bash git switch [branch-name] @@ -477,95 +474,94 @@ Bir katkıda bulunan iş akışını inceleyelim. Katkıda bulunanın zaten depo > 💡 **Modern Not**: `git switch`, dallar arasında geçiş yaparken `git checkout` yerine kullanılan modern bir alternatiftir. Daha net ve yeni başlayanlar için daha güvenlidir. -1. **Çalışma Yapın**. Bu noktada değişikliklerinizi eklemek istiyorsunuz. Git'e bunu aşağıdaki komutlarla bildirmeyi unutmayın: +1. **Çalışma yapma**. Bu noktada değişikliklerinizi eklemek istiyorsunuz. Git'e bunu aşağıdaki komutlarla bildirmeyi unutmayın: ```bash git add . git commit -m "my changes" ``` - > ⚠️ **Commit Mesajı Kalitesi**: Commit'inize hem kendi adınıza hem de yardım ettiğiniz depo bakımcısı adına iyi bir isim verdiğinizden emin olun. Yaptığınız değişiklikler hakkında spesifik olun! + > ⚠️ **Commit Mesaj Kalitesi**: Commit'inize hem sizin hem de yardım ettiğiniz depo bakımcısı için iyi bir isim verin. Ne değiştirdiğiniz konusunda spesifik olun! -1. **Çalışmanızı `main` dalıyla birleştirin**. Bir noktada çalışmanızı tamamladınız ve bunu `main` dalının çalışmasıyla birleştirmek istiyorsunuz. Bu arada `main` dalı değişmiş olabilir, bu yüzden önce aşağıdaki komutlarla en son haline güncellediğinizden emin olun: +1. **Çalışmanızı `main` dalıyla birleştirme**. Bir noktada çalışmanızı `main` dalıyla birleştirmek isteyeceksiniz. Bu arada `main` dalı değişmiş olabilir, bu yüzden önce aşağıdaki komutlarla en son haline güncellediğinizden emin olun: ```bash git switch main git pull ``` - Bu noktada, herhangi bir _çakışma_, yani Git'in değişiklikleri kolayca _birleştiremediği_ durumların çalışma dalınızda gerçekleştiğinden emin olmak istersiniz. Bu nedenle aşağıdaki komutları çalıştırın: + Bu noktada, herhangi bir _çatışmanın_, Git'in değişiklikleri kolayca _birleştiremediği_ durumların çalışma dalınızda gerçekleştiğinden emin olun. Bu nedenle aşağıdaki komutları çalıştırın: ```bash git switch [branch_name] git merge main ``` - `git merge main` komutu, `main` dalından tüm değişiklikleri dalınıza getirir. Umarız sorunsuz bir şekilde devam edebilirsiniz. Eğer olmazsa, VS Code size Git'in _kafasının karıştığı_ yerleri gösterecek ve etkilenen dosyaları değiştirerek en doğru içeriği belirteceksiniz. + `git merge main` komutu, `main` dalından tüm değişiklikleri dalınıza getirir. Umarız devam edebilirsiniz. Eğer edemezseniz, VS Code Git'in _kafasının karıştığı_ yerleri size gösterecek ve etkilenen dosyaları değiştirerek hangi içeriğin en doğru olduğunu belirteceksiniz. - 💡 **Modern Alternatif**: Daha temiz bir geçmiş için `git rebase` kullanmayı düşünün: + 💡 **Modern alternatif**: Daha temiz bir geçmiş için `git rebase` kullanmayı düşünün: ```bash git rebase main ``` - Bu, commit'lerinizi en son main dalının üzerine yeniden oynatarak doğrusal bir geçmiş oluşturur. + Bu, commit'lerinizi en son `main` dalının üzerine yeniden oynatır ve doğrusal bir geçmiş oluşturur. -1. **Çalışmanızı GitHub'a Gönderin**. Çalışmanızı GitHub'a göndermek iki şey anlamına gelir. Dalınızı deponuza itmek ve ardından bir PR, Pull Request açmak. +1. **Çalışmanızı GitHub'a gönderin**. Çalışmanızı GitHub'a göndermek iki şey anlamına gelir. Dalınızı deponuza itmek ve ardından bir PR, Pull Request açmak. ```bash git push --set-upstream origin [branch-name] ``` - Yukarıdaki komut, dalı fork edilmiş deponuzda oluşturur. + Yukarıdaki komut, dalı çatallanan deponuzda oluşturur. ### 🤝 **İş Birliği Becerileri Kontrolü: Başkalarıyla Çalışmaya Hazır mısınız?** -**İş birliği hakkında nasıl hissediyorsunuz:** -- Fork ve pull request kavramı artık size mantıklı geliyor mu? +**İş birliği hakkında nasıl hissettiğinizi görelim:** +- Fork ve pull request fikri artık size mantıklı geliyor mu? - Dallarla çalışmak hakkında daha fazla pratik yapmak istediğiniz bir şey nedir? - Başkasının projesine katkıda bulunma konusunda ne kadar rahat hissediyorsunuz? ```mermaid mindmap - root((Git Collaboration)) - Branching - Feature branches - Bug fix branches - Experimental work - Pull Requests - Code review - Discussion - Testing - Best Practices - Clear commit messages - Small focused changes - Good documentation + root((Git İşbirliği)) + Dallanma + Özellik dalları + Hata düzeltme dalları + Deneysel çalışmalar + Çekme İstekleri + Kod incelemesi + Tartışma + Test etme + En İyi Uygulamalar + Açık taahhüt mesajları + Küçük odaklanmış değişiklikler + İyi dokümantasyon ``` +> **Güven artırıcı**: Hayranlık duyduğunuz her geliştirici bir zamanlar ilk pull request'leri konusunda gergindi. GitHub topluluğu yeni başlayanlara inanılmaz derecede sıcak davranır! -> **Güven Artırıcı**: Hayran olduğunuz her bir geliştirici, bir zamanlar ilk pull request'leri konusunda gergindi. GitHub topluluğu yeni başlayanlara karşı son derece misafirperverdir! - -1. **Bir PR Açın**. Son olarak, bir PR açmak istiyorsunuz. Bunu yapmak için GitHub'daki fork edilmiş depoya gidin. GitHub'da yeni bir PR oluşturmak isteyip istemediğinizi soran bir gösterge göreceksiniz, buna tıklayın ve commit mesajı başlığını değiştirebileceğiniz, daha uygun bir açıklama ekleyebileceğiniz bir arayüze yönlendirilirsiniz. Şimdi fork ettiğiniz deponun bakımcısı bu PR'yi görecek ve _parmaklar çapraz_ umarız takdir eder ve PR'nizi _birleştirir_. Artık bir katkıda bulunan oldunuz, yaşasın :) +1. **Bir PR açın**. Son olarak, bir PR açmak istiyorsunuz. Bunu GitHub'daki çatallanan depoya giderek yapabilirsiniz. GitHub'da yeni bir PR oluşturmak isteyip istemediğinizi soran bir gösterge göreceksiniz, buna tıklayın ve commit mesajı başlığını değiştirebileceğiniz, daha uygun bir açıklama ekleyebileceğiniz bir arayüze yönlendirilirsiniz. Şimdi çatalladığınız deponun bakımcısı bu PR'ı görecek ve _parmaklar çapraz_ PR'ınızı takdir edip _birleştirecek_. Artık bir katkıda bulunan oldunuz, yaşasın :) - 💡 **Modern İpucu**: PR'leri GitHub CLI kullanarak da oluşturabilirsiniz: + 💡 **Modern ipucu**: PR'ları GitHub CLI kullanarak da oluşturabilirsiniz: ```bash gh pr create --title "Your PR title" --body "Description of changes" ``` - 🔧 **PR'ler için En İyi Uygulamalar**: - - "Fixes #123" gibi anahtar kelimeler kullanarak ilgili sorunlara bağlantı verin - - UI değişiklikleri için ekran görüntüleri ekleyin - - Belirli inceleyiciler isteyin - - Devam eden işler için taslak PR'ler kullanın - - İnceleme talep etmeden önce tüm CI kontrollerinin geçtiğinden emin olun + 🔧 **PR'lar için en iyi uygulamalar**: + - "Fixes #123" gibi anahtar kelimelerle ilgili sorunlara bağlantı verin. + - UI değişiklikleri için ekran görüntüleri ekleyin. + - Belirli inceleyiciler isteyin. + - Çalışma aşamasındaki işler için taslak PR'lar kullanın. + - İnceleme talep etmeden önce tüm CI kontrollerinin geçtiğinden emin olun. 1. **Temizlik yap**. Bir PR'yi başarıyla birleştirdikten sonra _temizlik yapmak_ iyi bir uygulama olarak kabul edilir. Hem yerel dalınızı hem de GitHub'a gönderdiğiniz dalı temizlemek istersiniz. Öncelikle aşağıdaki komutla yerel olarak silelim: ```bash git branch -d [branch-name] ``` - Ardından, GitHub'daki çatallanmış depo sayfasına gidin ve az önce gönderdiğiniz uzak dalı kaldırın. + Ardından, fork edilmiş repo için GitHub sayfasına gidin ve az önce gönderdiğiniz uzak dalı kaldırın. -`Pull request` (Çekme isteği) biraz garip bir terim gibi görünüyor çünkü aslında değişikliklerinizi projeye göndermek istiyorsunuz. Ancak, proje sahibi (maintainer) veya çekirdek ekip, değişikliklerinizi projenin "ana" dalıyla birleştirmeden önce değerlendirmelidir, bu yüzden aslında bir maintainer'dan değişiklik kararı talep ediyorsunuz. +`Pull request` terimi biraz garip görünebilir çünkü aslında değişikliklerinizi projeye göndermek istiyorsunuz. Ancak, proje sahibi (maintainer) veya çekirdek ekip, değişikliklerinizi projenin "ana" dalıyla birleştirmeden önce değerlendirmelidir, bu yüzden aslında bir maintainer'dan değişiklik kararı talep ediyorsunuz. -Bir çekme isteği, bir dalda yapılan değişiklikleri incelemek ve tartışmak için yorumlar, entegre testler ve daha fazlasıyla bir yerdir. İyi bir çekme isteği, kabaca bir commit mesajıyla aynı kuralları takip eder. Örneğin, çalışmanız bir sorunu çözüyor ise, sorun izleyicideki bir soruya referans ekleyebilirsiniz. Bu, `#` ve ardından sorun numarası kullanılarak yapılır. Örneğin `#97`. +Bir pull request, bir dalda yapılan değişiklikleri karşılaştırmak ve tartışmak için bir yerdir; incelemeler, yorumlar, entegre testler ve daha fazlasını içerir. İyi bir pull request, kabaca bir commit mesajının kurallarını takip eder. Örneğin, çalışmanız bir sorunu çözüyor ise, issue tracker'daki bir soruya referans ekleyebilirsiniz. Bu, `#` işareti ve ardından issue numarası ile yapılır. Örneğin `#97`. 🤞Parmaklarınızı çaprazlayın ki tüm kontroller geçsin ve proje sahibi(leri) değişikliklerinizi projeye birleştirsin🤞 @@ -573,55 +569,54 @@ GitHub'daki ilgili uzak dalda yapılan tüm yeni commit'lerle mevcut yerel çal `git pull` -## Açık Kaynağa Katkıda Bulunmak (Etkili Olma Şansınız!) +## Açık Kaynağa Katkı Sağlamak (Etkili Olma Şansınız!) -Hazır mısınız? Sizi tamamen şaşırtacak bir şeyden bahsedelim 🤯 Açık kaynak projelere katkıda bulunmaktan bahsediyoruz – ve bunu sizinle paylaşmayı düşündükçe tüylerim diken diken oluyor! +Hazır mısınız? Sizi tamamen şaşırtacak bir şeyden bahsedelim 🤯 Açık kaynak projelere katkı sağlamak – bunu sizinle paylaşmayı düşündükçe tüylerim diken diken oluyor! -Bu, gerçekten olağanüstü bir şeyin parçası olma şansınız. Milyonlarca geliştiricinin her gün kullandığı araçları geliştirdiğinizi veya arkadaşlarınızın sevdiği bir uygulamadaki bir hatayı düzelttiğinizi hayal edin. Bu sadece bir hayal değil – açık kaynak katkısının tam olarak ne olduğu bu! +Bu, gerçekten olağanüstü bir şeyin parçası olma şansınız. Milyonlarca geliştiricinin her gün kullandığı araçları geliştirdiğinizi veya arkadaşlarınızın sevdiği bir uygulamadaki bir hatayı düzelttiğinizi hayal edin. Bu sadece bir hayal değil – açık kaynak katkısı tam olarak bu! -Her düşündüğümde beni heyecanlandıran şey şu: Öğrendiğiniz her bir araç – kod editörünüz, keşfedeceğimiz framework'ler, hatta şu anda bu yazıyı okuduğunuz tarayıcı – bir zamanlar sizin gibi biri tarafından yapılan ilk katkıyla başladı. En sevdiğiniz VS Code uzantısını geliştiren o parlak geliştirici? Bir zamanlar titreyen ellerle "pull request oluştur" düğmesine tıklayan bir acemiydi, tıpkı sizin yapacağınız gibi. +Her düşündüğümde beni heyecanlandıran şey şu: Öğrendiğiniz her bir araç – kod editörünüz, keşfedeceğimiz framework'ler, hatta şu anda bu yazıyı okuduğunuz tarayıcı – bir zamanlar sizin gibi biri tarafından yapılan ilk katkıyla başladı. En sevdiğiniz VS Code eklentisini geliştiren o parlak geliştirici? Bir zamanlar titreyen ellerle "pull request oluştur" düğmesine tıklayan bir acemiydi, tıpkı sizin yapacağınız gibi. -Ve işte en güzel kısmı: açık kaynak topluluğu internetin en büyük grup kucaklaması gibi. Çoğu proje yeni başlayanları aktif olarak arar ve "good first issue" (iyi ilk sorun) etiketiyle işaretlenmiş sorunlara sahiptir, özellikle sizin gibi insanlar için! Proje sahipleri yeni katkıda bulunanları gördüklerinde gerçekten heyecanlanır çünkü kendi ilk adımlarını hatırlarlar. +Ve işte en güzel kısmı: Açık kaynak topluluğu, internetin en büyük grup sarılması gibidir. Çoğu proje yeni başlayanları aktif olarak arar ve "good first issue" etiketiyle işaretlenmiş sorunlar tam da sizin gibi insanlar için! Maintainer'lar yeni katkı sağlayıcıları gördüklerinde gerçekten heyecanlanır çünkü kendi ilk adımlarını hatırlarlar. ```mermaid flowchart TD - A[🔍 Explore GitHub] --> B[🏷️ Find "good first issue"] - B --> C[📖 Read Contributing Guidelines] - C --> D[🍴 Fork Repository] - D --> E[💻 Set Up Local Environment] - E --> F[🌿 Create Feature Branch] - F --> G[✨ Make Your Contribution] - G --> H[🧪 Test Your Changes] - H --> I[📝 Write Clear Commit] - I --> J[📤 Push & Create PR] - J --> K[💬 Engage with Feedback] - K --> L[🎉 Merged! You're a Contributor!] - L --> M[🌟 Find Next Issue] + A[🔍 GitHub'u Keşfet] --> B[🏷️ "İlk iyi sorun" bul] + B --> C[📖 Katkı Sağlama Kılavuzlarını Oku] + C --> D[🍴 Depoyu Çatalla] + D --> E[💻 Yerel Ortamı Kur] + E --> F[🌿 Özellik Dalı Oluştur] + F --> G[✨ Katkını Yap] + G --> H[🧪 Değişikliklerini Test Et] + H --> I[📝 Açık Bir Commit Yaz] + I --> J[📤 Gönder & PR Oluştur] + J --> K[💬 Geri Bildirimle Etkileşim Kur] + K --> L[🎉 Birleştirildi! Artık Bir Katkıcısın!] + L --> M[🌟 Bir Sonraki Sorunu Bul] style A fill:#e1f5fe style L fill:#c8e6c9 style M fill:#fff59d ``` +Burada sadece kod yazmayı öğrenmiyorsunuz – dijital dünyayı biraz daha iyi hale getirmek için her gün uyanan küresel bir inşaatçılar ailesine katılmaya hazırlanıyorsunuz! Kulübe hoş geldiniz! 🌟 -Burada sadece kod yazmayı öğrenmiyorsunuz – dijital dünyayı biraz daha iyi hale getirmek için her gün uyanan küresel bir yapıcılar ailesine katılmaya hazırlanıyorsunuz! Kulübe hoş geldiniz! 🌟 - -Öncelikle, GitHub'da ilginizi çeken ve bir değişiklik yapmak istediğiniz bir depo (veya **repo**) bulalım. İçeriğini makinenize kopyalamak isteyeceksiniz. +Öncelikle, GitHub'da ilginizi çeken ve değişiklik yapmak istediğiniz bir depo (veya **repo**) bulalım. İçeriğini makinenize kopyalamak isteyeceksiniz. ✅ 'Yeni başlayanlar için uygun' depoları bulmanın iyi bir yolu [‘good-first-issue’ etiketiyle arama yapmak](https://github.blog/2020-01-22-browse-good-first-issues-to-start-contributing-to-open-source/)dır. -![Bir depoyu yerel olarak kopyalayın](../../../../translated_images/clone_repo.5085c48d666ead57664f050d806e325d7f883be6838c821e08bc823ab7c66665.tr.png) +![Bir depoyu yerel olarak kopyalama](../../../../translated_images/clone_repo.5085c48d666ead57664f050d806e325d7f883be6838c821e08bc823ab7c66665.tr.png) -Kodları kopyalamanın birkaç yolu vardır. Bir yol, HTTPS, SSH veya GitHub CLI (Komut Satırı Arayüzü) kullanarak depoyu "klonlamak"tır. +Kod kopyalamanın birkaç yolu vardır. Bir yol, HTTPS, SSH veya GitHub CLI (Komut Satırı Arayüzü) kullanarak depo içeriğini "klonlamaktır". Terminalinizi açın ve depoyu şu şekilde klonlayın: ```bash -# Using HTTPS +# HTTPS kullanılıyor git clone https://github.com/ProjectURL -# Using SSH (requires SSH key setup) +# SSH kullanılıyor (SSH anahtar kurulumu gerektirir) git clone git@github.com:username/repository.git -# Using GitHub CLI +# GitHub CLI kullanılıyor gh repo clone username/repository ``` @@ -632,66 +627,66 @@ Ayrıca tüm projeyi şu araçlarla açabilirsiniz: - **[GitHub Codespaces](https://github.com/features/codespaces)** - Tarayıcıda VS Code ile GitHub'ın bulut geliştirme ortamı - **[GitHub Desktop](https://desktop.github.com/)** - Git işlemleri için bir GUI uygulaması - **[GitHub.dev](https://github.dev)** - Herhangi bir GitHub deposunda `.` tuşuna basarak tarayıcıda VS Code'u açın -- **VS Code** ve GitHub Pull Requests uzantısı +- **VS Code** GitHub Pull Requests eklentisi ile Son olarak, kodu sıkıştırılmış bir klasör olarak indirebilirsiniz. -### GitHub Hakkında Birkaç İlginç Bilgi +### GitHub hakkında birkaç ilginç şey -GitHub'daki herhangi bir genel depoyu yıldızlayabilir, izleyebilir ve/veya "fork" yapabilirsiniz. Yıldızladığınız depoları sağ üst açılır menüde bulabilirsiniz. Bu, kod için bir tür yer imi gibidir. +GitHub'daki herhangi bir genel depoyu yıldızlayabilir, izleyebilir ve/veya "fork" edebilirsiniz. Yıldızladığınız depoları sağ üst açılır menüde bulabilirsiniz. Bu, kod için yer imi oluşturmak gibidir. -Projelerin genellikle GitHub'da "Issues" sekmesinde (aksi belirtilmedikçe) bir sorun izleyicisi vardır, burada insanlar projeyle ilgili sorunları tartışır. Ve Pull Requests sekmesi, üzerinde çalışılan değişikliklerin tartışıldığı ve gözden geçirildiği yerdir. +Projelerde genellikle GitHub'da "Issues" sekmesinde (aksi belirtilmedikçe) bir issue tracker bulunur, burada projeyle ilgili sorunlar tartışılır. Ve Pull Requests sekmesi, devam eden değişikliklerin tartışıldığı ve incelendiği yerdir. -Projeler ayrıca forumlarda, e-posta listelerinde veya Slack, Discord veya IRC gibi sohbet kanallarında tartışmalara sahip olabilir. +Projelerde ayrıca forumlar, e-posta listeleri veya Slack, Discord veya IRC gibi sohbet kanallarında tartışmalar olabilir. 🔧 **Modern GitHub özellikleri**: - **GitHub Discussions** - Topluluk sohbetleri için yerleşik forum -- **GitHub Sponsors** - Proje sahiplerini finansal olarak destekleyin +- **GitHub Sponsors** - Maintainer'ları finansal olarak destekleyin - **Security tab** - Güvenlik açıkları raporları ve güvenlik tavsiyeleri -- **Actions tab** - Otomatik iş akışlarını ve CI/CD süreçlerini görün -- **Insights tab** - Katkıda bulunanlar, commit'ler ve proje sağlığı hakkında analizler +- **Actions tab** - Otomatik iş akışlarını ve CI/CD boru hatlarını görün +- **Insights tab** - Katkı sağlayıcılar, commit'ler ve proje sağlığı hakkında analizler - **Projects tab** - GitHub'ın yerleşik proje yönetim araçları -✅ Yeni GitHub deponuzda etrafınıza bakın ve ayarları düzenlemek, deponuza bilgi eklemek, bir proje oluşturmak (örneğin bir Kanban tahtası gibi) ve otomasyon için GitHub Actions'ı ayarlamak gibi birkaç şey deneyin. Yapabileceğiniz çok şey var! +✅ Yeni GitHub deponuzda etrafa bir göz atın ve ayarları düzenlemek, deponuza bilgi eklemek, bir proje oluşturmak (örneğin bir Kanban tahtası gibi) ve otomasyon için GitHub Actions'ı ayarlamak gibi birkaç şey deneyin. Yapabileceğiniz çok şey var! --- ## 🚀 Meydan Okuma -Tamam, yeni GitHub süper güçlerinizi test etme zamanı! 🚀 İşte her şeyi en tatmin edici şekilde anlamanızı sağlayacak bir meydan okuma: +Tamam, şimdi yeni GitHub süper güçlerinizi test etme zamanı! 🚀 İşte her şeyi en tatmin edici şekilde anlamanızı sağlayacak bir meydan okuma: -Bir arkadaşınızı (veya sürekli "bu bilgisayar işleriyle ne yapıyorsun?" diye soran bir aile üyenizi) alın ve birlikte bir kodlama macerasına çıkın! İşte gerçek sihir burada başlıyor – bir proje oluşturun, onların çatallamasına izin verin, birkaç dal oluşturun ve profesyonel gibi değişiklikleri birleştirin. +Bir arkadaşınızı (veya sürekli "bu bilgisayar işleriyle ne yapıyorsun?" diye soran bir aile üyenizi) alın ve birlikte bir kodlama macerasına çıkın! İşte gerçek sihir burada başlıyor – bir proje oluşturun, onların fork yapmasına izin verin, birkaç dal oluşturun ve değişiklikleri birleştirin, tıpkı profesyoneller gibi. -Dürüst olacağım – muhtemelen bir noktada güleceksiniz (özellikle ikiniz aynı satırı değiştirmeye çalıştığınızda), belki kafanız karışacak, ama kesinlikle tüm öğrenmeyi değerli kılan o harika "aha!" anlarını yaşayacaksınız. Ayrıca, bir başkasıyla ilk başarılı birleştirmeyi paylaşmanın özel bir yanı var – ne kadar ilerlediğinizi kutlayan küçük bir kutlama gibi! +Dürüst olacağım – muhtemelen bir noktada güleceksiniz (özellikle ikiniz aynı satırı değiştirmeye çalıştığınızda), belki kafanız karışacak, ama kesinlikle tüm öğrenmeyi değerli kılan o harika "aha!" anlarını yaşayacaksınız. Ayrıca, ilk başarılı birleştirmeyi başkasıyla paylaşmanın özel bir yanı var – ne kadar ilerlediğinizi kutlayan küçük bir kutlama gibi! -Henüz bir kodlama arkadaşınız yok mu? Hiç sorun değil! GitHub topluluğu, yeni olmanın nasıl bir şey olduğunu hatırlayan inanılmaz derecede misafirperver insanlarla dolu. "good first issue" etiketli depoları arayın – bunlar temelde "Hey yeni başlayanlar, bizimle öğrenin!" diyor. Ne kadar harika, değil mi? +Henüz bir kodlama arkadaşınız yok mu? Hiç sorun değil! GitHub topluluğu, yeni olmanın nasıl bir şey olduğunu hatırlayan inanılmaz derecede sıcak insanlarla dolu. "good first issue" etiketli depoları arayın – temelde "Hey yeni başlayanlar, bizimle öğrenin!" diyorlar. Ne kadar harika, değil mi? ## Ders Sonrası Quiz [Ders sonrası quiz](https://ff-quizzes.netlify.app/web/en/) ## Gözden Geçirme ve Öğrenmeye Devam Etme -Vay! 🎉 Bakın size – GitHub temellerini bir şampiyon gibi fethettiniz! Şu anda beyniniz biraz dolu hissediyorsa, bu tamamen normal ve dürüst olmak gerekirse iyi bir işaret. Başladığımda haftalarımı alan araçları öğrendiniz. +Vay! 🎉 Bakın size – GitHub temellerini bir şampiyon gibi fethettiniz! Şu anda beyniniz biraz dolu hissediyorsa, bu tamamen normal ve dürüst olmak gerekirse iyi bir işaret. Başladığımda haftalarca rahat hissetmek için uğraştığım araçları yeni öğrendiniz. -Git ve GitHub inanılmaz derecede güçlüdür (cidden güçlüdür) ve tanıdığım her geliştirici – şu anda sihirbaz gibi görünenler dahil – her şeyin yerine oturması için pratik yapmalı ve biraz tökezlemeliydi. Bu dersi tamamlamış olmanız, bir geliştiricinin araç setindeki en önemli araçlardan bazılarını öğrenme yolunda olduğunuz anlamına geliyor. +Git ve GitHub inanılmaz derecede güçlüdür (cidden güçlü), ve tanıdığım her geliştirici – şu anda sihirbaz gibi görünenler dahil – her şeyin yerine oturması için biraz pratik yapıp tökezlemek zorunda kaldı. Bu dersi tamamlamış olmanız, bir geliştiricinin araç setindeki en önemli araçlardan bazılarını öğrenme yolunda olduğunuz anlamına gelir. İşte pratik yapmanıza ve daha da harika olmanıza yardımcı olacak bazı harika kaynaklar: -- [Açık kaynak yazılıma katkıda bulunma rehberi](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) – Fark yaratmanız için yol haritanız -- [Git kopya kağıdı](https://training.github.com/downloads/github-git-cheat-sheet/) – Hızlı başvuru için elinizin altında bulundurun! +- [Açık kaynak yazılıma katkı sağlama rehberi](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) – Fark yaratmak için yol haritanız +- [Git hile sayfası](https://training.github.com/downloads/github-git-cheat-sheet/) – Hızlı referans için elinizin altında bulundurun! -Ve unutmayın: pratik mükemmellik değil, ilerleme sağlar! Git ve GitHub'ı ne kadar çok kullanırsanız, o kadar doğal hale gelir. GitHub, güvenli bir ortamda pratik yapmanıza olanak tanıyan bazı harika etkileşimli kurslar oluşturdu: +Ve unutmayın: pratik mükemmellik değil, ilerleme sağlar! Git ve GitHub'ı ne kadar çok kullanırsanız, o kadar doğal hale gelir. GitHub, güvenli bir ortamda pratik yapmanıza olanak tanıyan bazı harika interaktif kurslar oluşturdu: - [GitHub'a Giriş](https://github.com/skills/introduction-to-github) - [Markdown ile İletişim Kurma](https://github.com/skills/communicate-using-markdown) - [GitHub Pages](https://github.com/skills/github-pages) -- [Birleştirme Çakışmalarını Yönetme](https://github.com/skills/resolve-merge-conflicts) +- [Birleştirme Çatışmalarını Yönetme](https://github.com/skills/resolve-merge-conflicts) **Macera mı arıyorsunuz? İşte modern araçlar:** - [GitHub CLI belgeleri](https://cli.github.com/manual/) – Komut satırı sihirbazı gibi hissetmek için - [GitHub Codespaces belgeleri](https://docs.github.com/en/codespaces) – Bulutta kod yazın! - [GitHub Actions belgeleri](https://docs.github.com/en/actions) – Her şeyi otomatikleştirin -- [Git en iyi uygulamaları](https://www.atlassian.com/git/tutorials/comparing-workflows) – İş akışı becerilerinizi geliştirin +- [Git en iyi uygulamaları](https://www.atlassian.com/git/tutorials/comparing-workflows) – İş akışı oyununu geliştirin ## GitHub Copilot Agent Meydan Okuması 🚀 @@ -699,16 +694,16 @@ Agent modunu kullanarak aşağıdaki meydan okumayı tamamlayın: **Açıklama:** Bu derste öğrendiğiniz GitHub iş akışını tamamen gösteren işbirlikçi bir web geliştirme projesi oluşturun. Bu meydan okuma, depo oluşturma, işbirliği özellikleri ve modern Git iş akışlarını gerçek dünya senaryosunda uygulamanıza yardımcı olacaktır. -**Talimat:** Basit bir "Web Geliştirme Kaynakları" projesi için yeni bir genel GitHub deposu oluşturun. Depo, kategorilere (HTML, CSS, JavaScript, vb.) göre düzenlenmiş yararlı web geliştirme araçları ve kaynaklarını listeleyen iyi yapılandırılmış bir README.md dosyası içermelidir. Depoyu uygun topluluk standartlarıyla (lisans, katkı yönergeleri ve davranış kuralları dahil) ayarlayın. En az iki özellik dalı oluşturun: biri CSS kaynaklarını eklemek için, diğeri JavaScript kaynaklarını eklemek için. Her bir dala açıklayıcı commit mesajlarıyla commit'ler yapın, ardından değişiklikleri ana dala birleştirmek için çekme istekleri oluşturun. Sorunlar, Tartışmalar gibi GitHub özelliklerini etkinleştirin ve otomatik kontroller için temel bir GitHub Actions iş akışı ayarlayın. +**Talimat:** Basit bir "Web Geliştirme Kaynakları" projesi için yeni bir genel GitHub deposu oluşturun. Depo, kategorilere göre düzenlenmiş (HTML, CSS, JavaScript, vb.) yararlı web geliştirme araçları ve kaynaklarını listeleyen iyi yapılandırılmış bir README.md dosyası içermelidir. Depoyu lisans, katkı sağlama yönergeleri ve bir davranış kuralları gibi uygun topluluk standartlarıyla ayarlayın. CSS kaynaklarını eklemek için bir dal ve JavaScript kaynaklarını eklemek için başka bir dal oluşturun. Her dala açıklayıcı commit mesajlarıyla commit yapın, ardından değişiklikleri ana dala birleştirmek için pull request'ler oluşturun. Issues, Discussions gibi GitHub özelliklerini etkinleştirin ve otomatik kontroller için temel bir GitHub Actions iş akışı ayarlayın. ## Ödev -Göreviniz, kabul etmeyi seçerseniz: GitHub Skills'deki [GitHub'a Giriş](https://github.com/skills/introduction-to-github) kursunu tamamlayın. Bu etkileşimli kurs, öğrendiklerinizi güvenli, rehberli bir ortamda uygulamanıza olanak tanır. Ayrıca, bitirdiğinizde harika bir rozet kazanacaksınız! 🏅 +Göreviniz, kabul etmeyi seçerseniz: GitHub Skills'deki [GitHub'a Giriş](https://github.com/skills/introduction-to-github) kursunu tamamlayın. Bu interaktif kurs, öğrendiklerinizi güvenli, rehberli bir ortamda uygulamanıza olanak tanır. Ayrıca bitirdiğinizde harika bir rozet kazanacaksınız! 🏅 **Daha fazla meydan okumaya hazır mısınız?** - GitHub hesabınız için SSH kimlik doğrulamasını ayarlayın (artık şifre yok!) - Günlük Git işlemleriniz için GitHub CLI kullanmayı deneyin -- GitHub Actions iş akışı ile bir depo oluşturun +- GitHub Actions iş akışı olan bir depo oluşturun - Bu depoyu bulut tabanlı bir editörde açarak GitHub Codespaces'ı keşfedin --- @@ -722,58 +717,59 @@ Göreviniz, kabul etmeyi seçerseniz: GitHub Skills'deki [GitHub'a Giriş](https - [ ] Çalışmaları sizi etkileyen 5 geliştiriciyi takip edin ### 🎯 **Bu Saatte Başarabilecekleriniz** -- [ ] Ders sonrası testi tamamlayın ve GitHub yolculuğunuzu değerlendirin +- [ ] Ders sonrası quiz'i tamamlayın ve GitHub yolculuğunuzu düşünün - [ ] GitHub kimlik doğrulaması için SSH anahtarlarını ayarlayın - [ ] Harika bir commit mesajıyla ilk anlamlı commit'inizi oluşturun - [ ] GitHub'ın "Keşfet" sekmesini keşfederek trend olan projeleri bulun -- [ ] Bir depoyu çatallayıp küçük bir değişiklik yapmayı deneyin +- [ ] Bir depoyu fork etmeyi ve küçük bir değişiklik yapmayı pratik edin ### 📅 **Haftalık GitHub Maceranız** - [ ] GitHub Skills kurslarını tamamlayın (GitHub'a Giriş, Markdown) -- [ ] Açık kaynak bir projeye ilk çekme isteğinizi yapın -- [ ] Çalışmalarınızı sergilemek için bir GitHub Pages sitesi kurun -- [ ] İlginizi çeken projelerde GitHub Tartışmalarına katılın +- [ ] Açık kaynak bir projeye ilk pull request'inizi yapın +- [ ] Çalışmanızı sergilemek için bir GitHub Pages sitesi kurun +- [ ] İlginizi çeken projelerde GitHub Discussions'a katılın - [ ] Uygun topluluk standartlarına sahip bir depo oluşturun (README, Lisans, vb.) - [ ] Bulut tabanlı geliştirme için GitHub Codespaces'ı deneyin ### 🌟 **Aylık Dönüşümünüz** -- [ ] 3 farklı açık kaynak projesine katkıda bulunun -- [ ] GitHub'da yeni birine mentorluk yapın (iyiliği paylaşın!) +- [ ] 3 farklı açık kaynak projeye katkıda bulunun +- [ ] GitHub'da yeni birine mentorluk yapın (yardımcı olun!) - [ ] GitHub Actions ile otomatik iş akışları ayarlayın - [ ] GitHub katkılarınızı sergileyen bir portföy oluşturun - [ ] Hacktoberfest veya benzeri topluluk etkinliklerine katılın -- [ ] Başkalarının katkıda bulunduğu kendi projenizin sahibi olun +- [ ] Başkalarının katkıda bulunduğu kendi projenizin maintainer'ı olun ### 🎓 **Son GitHub Ustalık Kontrolü** **Ne kadar ilerlediğinizi kutlayın:** -- GitHub kullanımı hakkında en sevdiğiniz şey nedir? +- GitHub kullanımıyla ilgili en sevdiğiniz şey nedir? - Sizi en çok heyecanlandıran işbirliği özelliği hangisi? -- Açık kaynağa katkıda bulunma konusunda kendinizi ne kadar güvende hissediyorsunuz? -- İlk katkıda bulunmak istediğiniz proje hangisi? +- Açık kaynağa katkı sağlama konusunda ne kadar kendinize güveniyorsunuz? +- Katkıda bulunmak istediğiniz ilk proje hangisi? ```mermaid journey - title Your GitHub Confidence Journey - section Today - Nervous: 3: You - Curious: 4: You - Excited: 5: You - section This Week - Practicing: 4: You - Contributing: 5: You - Connecting: 5: You - section Next Month - Collaborating: 5: You - Leading: 5: You - Inspiring Others: 5: You + title GitHub Güven Yolculuğunuz + section Bugün + Gergin: 3: Siz + Meraklı: 4: Siz + Heyecanlı: 5: Siz + section Bu Hafta + Pratik Yapıyor: 4: Siz + Katkıda Bulunuyor: 5: Siz + Bağlantı Kuruyor: 5: Siz + section Gelecek Ay + İşbirliği Yapıyor: 5: Siz + Liderlik Yapıyor: 5: Siz + Başkalarına İlham Veriyor: 5: Siz ``` - -> 🌍 **Küresel geliştirici topluluğuna hoş geldiniz!** Artık dünya çapında milyonlarca geliştiriciyle işbirliği yapma araçlarına sahipsiniz. İlk katkınız küçük görünebilir, ancak unutmayın - her büyük açık kaynak projesi birinin ilk commit'ini yapmasıyla başladı. Soru, etkili olup olmayacağınız değil, hangi harika projenin benzersiz bakış açınızdan ilk olarak faydalanacağıdır! 🚀 +> 🌍 **Küresel geliştirici topluluğuna hoş geldiniz!** Artık dünya çapında milyonlarca geliştiriciyle işbirliği yapma araçlarına sahipsiniz. İlk katkınız küçük görünebilir, ancak unutmayın - her büyük açık kaynak projesi, birinin ilk commit'ini yapmasıyla başladı. Soru, etkili olup olmayacağınız değil, hangi harika projenin benzersiz bakış açınızdan faydalanacağıdır! 🚀 Unutmayın: her uzman bir zamanlar acemiydi. Bunu başarabilirsiniz! 💪 --- + **Feragatname**: -Bu belge, AI çeviri hizmeti [Co-op Translator](https://github.com/Azure/co-op-translator) kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çevirilerin hata veya yanlışlık içerebileceğini lütfen unutmayın. Belgenin orijinal dili, yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından kaynaklanan yanlış anlamalar veya yanlış yorumlamalar için sorumluluk kabul etmiyoruz. \ No newline at end of file +Bu belge, AI çeviri hizmeti [Co-op Translator](https://github.com/Azure/co-op-translator) kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çeviriler hata veya yanlışlıklar içerebilir. Belgenin orijinal dili, yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından kaynaklanan yanlış anlamalar veya yanlış yorumlamalardan sorumlu değiliz. + \ No newline at end of file diff --git a/translations/tr/README.md b/translations/tr/README.md index 68ea8ac1..48d0f2e2 100644 --- a/translations/tr/README.md +++ b/translations/tr/README.md @@ -1,8 +1,8 @@ [Arabic](../ar/README.md) | [Bengali](../bn/README.md) | [Bulgarian](../bg/README.md) | [Burmese (Myanmar)](../my/README.md) | [Chinese (Simplified)](../zh/README.md) | [Chinese (Traditional, Hong Kong)](../hk/README.md) | [Chinese (Traditional, Macau)](../mo/README.md) | [Chinese (Traditional, Taiwan)](../tw/README.md) | [Croatian](../hr/README.md) | [Czech](../cs/README.md) | [Danish](../da/README.md) | [Dutch](../nl/README.md) | [Estonian](../et/README.md) | [Finnish](../fi/README.md) | [French](../fr/README.md) | [German](../de/README.md) | [Greek](../el/README.md) | [Hebrew](../he/README.md) | [Hindi](../hi/README.md) | [Hungarian](../hu/README.md) | [Indonesian](../id/README.md) | [Italian](../it/README.md) | [Japanese](../ja/README.md) | [Korean](../ko/README.md) | [Lithuanian](../lt/README.md) | [Malay](../ms/README.md) | [Marathi](../mr/README.md) | [Nepali](../ne/README.md) | [Norwegian](../no/README.md) | [Persian (Farsi)](../fa/README.md) | [Polish](../pl/README.md) | [Portuguese (Brazil)](../br/README.md) | [Portuguese (Portugal)](../pt/README.md) | [Punjabi (Gurmukhi)](../pa/README.md) | [Romanian](../ro/README.md) | [Russian](../ru/README.md) | [Serbian (Cyrillic)](../sr/README.md) | [Slovak](../sk/README.md) | [Slovenian](../sl/README.md) | [Spanish](../es/README.md) | [Swahili](../sw/README.md) | [Swedish](../sv/README.md) | [Tagalog (Filipino)](../tl/README.md) | [Tamil](../ta/README.md) | [Thai](../th/README.md) | [Turkish](./README.md) | [Ukrainian](../uk/README.md) | [Urdu](../ur/README.md) | [Vietnamese](../vi/README.md) -**Ek dil çevirileri istiyorsanız, desteklenen diller [burada](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md) listelenmiştir.** +**Ek çeviri dillerinin desteklenmesini istiyorsanız, desteklenen diller [burada](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md) listelenmiştir.** [![Visual Studio Code'da Aç](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners) #### 🧑‍🎓 _Öğrenci misiniz?_ -[**Öğrenci Merkezi sayfasını**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) ziyaret edin, burada başlangıç kaynakları, öğrenci paketleri ve hatta ücretsiz sertifika kuponu alma yollarını bulabilirsiniz. Bu sayfayı yer imlerine ekleyin ve içeriği aylık olarak değiştirdiğimiz için zaman zaman kontrol edin. +[**Öğrenci Merkezi sayfasını**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) ziyaret edin. Burada başlangıç kaynakları, öğrenci paketleri ve hatta ücretsiz sertifika kuponu alma yollarını bulabilirsiniz. Bu sayfayı yer imlerinize ekleyin ve içeriği aylık olarak değiştirdiğimiz için zaman zaman kontrol edin. -### 📣 Duyuru - Tamamlanacak Yeni GitHub Copilot Agent modu zorlukları! +### 📣 Duyuru - Yeni GitHub Copilot Agent modu zorlukları tamamlanabilir! -Yeni bir zorluk eklendi, çoğu bölümde "GitHub Copilot Agent Challenge 🚀" başlığını arayın. Bu, GitHub Copilot ve Agent modunu kullanarak tamamlamanız gereken yeni bir zorluk. Daha önce Agent modunu kullanmadıysanız, bu mod yalnızca metin oluşturmakla kalmaz, aynı zamanda dosyalar oluşturabilir ve düzenleyebilir, komutlar çalıştırabilir ve daha fazlasını yapabilir. +Yeni bir zorluk eklendi, çoğu bölümde "GitHub Copilot Agent Challenge 🚀" başlığını arayın. Bu, GitHub Copilot ve Agent modunu kullanarak tamamlamanız gereken yeni bir zorluk. Daha önce Agent modunu kullanmadıysanız, yalnızca metin oluşturmakla kalmaz, aynı zamanda dosyalar oluşturabilir ve düzenleyebilir, komutlar çalıştırabilir ve daha fazlasını yapabilir. -### 📣 Duyuru - _Yeni Proje: Üretken Yapay Zeka ile İnşa Edin_ +### 📣 Duyuru - _Generative AI kullanarak yeni bir proje oluşturun_ Yeni bir AI Asistan projesi eklendi, [projeye](./09-chat-project/README.md) göz atın. -### 📣 Duyuru - _Yeni Müfredat_ JavaScript için Üretken Yapay Zeka müfredatı yayınlandı +### 📣 Duyuru - _Yeni Müfredat_ Generative AI için JavaScript'te yayınlandı -Yeni Üretken Yapay Zeka müfredatımızı kaçırmayın! +Yeni Generative AI müfredatımızı kaçırmayın! Başlamak için [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) adresini ziyaret edin! ![Arka Plan](../../translated_images/background.148a8d43afde57303419a663f50daf586681bc2fabf833f66ef6954073983c66.tr.png) - Temellerden RAG'ye kadar her şeyi kapsayan dersler. -- GenAI ve yardımcı uygulamamızla tarihi karakterlerle etkileşimde bulunun. +- GenAI ve yardımcı uygulamamızla tarihi karakterlerle etkileşim kurun. - Eğlenceli ve ilgi çekici bir anlatım, zamanda yolculuk yapacaksınız! ![karakter](../../translated_images/character.5c0dd8e067ffd693c16e2c5b7412ab075a2215ce31f998305639fa3a05e14fbe.tr.png) -Her ders, tamamlanacak bir ödev, bilgi kontrolü ve aşağıdaki gibi konuları öğrenmenize rehberlik edecek bir zorluk içerir: -- İstek oluşturma ve istek mühendisliği -- Metin ve görüntü uygulaması oluşturma +Her ders, tamamlamanız gereken bir ödev, bir bilgi kontrolü ve aşağıdaki konuları öğrenmenize rehberlik edecek bir zorluk içerir: +- Prompting ve prompt mühendisliği +- Metin ve görsel uygulama oluşturma - Arama uygulamaları Başlamak için [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) adresini ziyaret edin! + + ## 🌱 Başlarken -> **Öğretmenler**, bu müfredatı nasıl kullanabileceğinizle ilgili [bazı öneriler](for-teachers.md) ekledik. Geri bildirimlerinizi [tartışma forumumuzda](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner) paylaşmanızı çok isteriz! +> **Öğretmenler**, bu müfredatı nasıl kullanacağınızla ilgili [bazı öneriler ekledik](for-teachers.md). Geri bildirimlerinizi [tartışma forumumuzda](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner) duymak isteriz! -**[Öğrenciler](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, her ders için bir ön ders testiyle başlayın ve ders materyalini okuyarak, çeşitli etkinlikleri tamamlayarak ve ders sonrası testiyle anlayışınızı kontrol ederek devam edin. +**[Öğrenciler](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, her ders için bir ön ders sınavıyla başlayın ve ardından ders materyalini okuyarak, çeşitli etkinlikleri tamamlayarak ve ders sonrası sınavla bilginizi kontrol ederek devam edin. -Öğrenme deneyiminizi geliştirmek için projeler üzerinde birlikte çalışmak üzere akranlarınızla bağlantı kurun! Tartışmalar, [tartışma forumumuzda](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) teşvik edilir, burada moderatör ekibimiz sorularınızı yanıtlamak için hazır olacaktır. +Öğrenme deneyiminizi geliştirmek için projeler üzerinde birlikte çalışmak üzere akranlarınızla bağlantı kurun! Tartışmalar, [tartışma forumumuzda](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) teşvik edilmektedir ve moderatör ekibimiz sorularınızı yanıtlamak için hazır olacaktır. -Eğitiminizi ilerletmek için [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) adresindeki ek çalışma materyallerini keşfetmenizi şiddetle tavsiye ederiz. +Eğitiminizi daha da ileriye taşımak için [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) platformunda ek çalışma materyallerini keşfetmenizi şiddetle tavsiye ederiz. ### 📋 Ortamınızı Ayarlama -Bu müfredat, kullanıma hazır bir geliştirme ortamına sahiptir! Başlarken, müfredatı [Codespace](https://github.com/features/codespaces/) (_tarayıcı tabanlı, kurulum gerektirmeyen bir ortam_) veya bilgisayarınızda yerel olarak [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) gibi bir metin editörü kullanarak çalıştırmayı seçebilirsiniz. +Bu müfredat, kullanıma hazır bir geliştirme ortamına sahiptir! Başlarken, müfredatı bir [Codespace](https://github.com/features/codespaces/) (_tarayıcı tabanlı, kurulum gerektirmeyen bir ortam_) içinde veya bilgisayarınızda bir metin düzenleyici kullanarak yerel olarak çalıştırmayı seçebilirsiniz, örneğin [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon). #### Depo Oluşturun -Çalışmanızı kolayca kaydedebilmeniz için bu depodan kendi kopyanızı oluşturmanız önerilir. Bunu, sayfanın üst kısmındaki **Bu şablonu kullan** düğmesine tıklayarak yapabilirsiniz. Bu, GitHub hesabınızda müfredatın bir kopyasıyla yeni bir depo oluşturacaktır. +Çalışmanızı kolayca kaydedebilmeniz için bu deponun kendi kopyanızı oluşturmanız önerilir. Bunu, sayfanın üst kısmındaki **Bu şablonu kullan** düğmesine tıklayarak yapabilirsiniz. Bu, GitHub hesabınızda müfredatın bir kopyasıyla yeni bir depo oluşturacaktır. -Adımları izleyin: +Şu adımları izleyin: 1. **Depoyu Çatallayın**: Bu sayfanın sağ üst köşesindeki "Fork" düğmesine tıklayın. 2. **Depoyu Klonlayın**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git` @@ -106,30 +108,30 @@ Oluşturduğunuz bu deponun kopyasında, **Kod** düğmesine tıklayın ve **Cod #### Müfredatı Bilgisayarınızda Yerel Olarak Çalıştırma -Bu müfredatı bilgisayarınızda yerel olarak çalıştırmak için bir metin editörüne, bir tarayıcıya ve bir komut satırı aracına ihtiyacınız olacak. İlk dersimiz, [Programlama Dillerine ve Araçlarına Giriş](../../1-getting-started-lessons/1-intro-to-programming-languages), bu araçların her biri için size en uygun olanı seçmenize yardımcı olacak çeşitli seçenekleri gösterecektir. +Bu müfredatı bilgisayarınızda yerel olarak çalıştırmak için bir metin düzenleyiciye, bir tarayıcıya ve bir komut satırı aracına ihtiyacınız olacak. İlk dersimiz, [Programlama Dillerine ve Araçlarına Giriş](../../1-getting-started-lessons/1-intro-to-programming-languages), bu araçların her biri için çeşitli seçenekleri gözden geçirerek size en uygun olanı seçmenize yardımcı olacaktır. -Önerimiz, [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) kullanmanızdır, bu editör aynı zamanda yerleşik bir [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) içerir. Visual Studio Code'u [buradan](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) indirebilirsiniz. +Önerimiz, [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) kullanmanızdır. Bu düzenleyici, aynı zamanda yerleşik bir [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) içerir. Visual Studio Code'u [buradan](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) indirebilirsiniz. -1. Depoyu bilgisayarınıza klonlayın. Bunu, **Kod** düğmesine tıklayarak ve URL'yi kopyalayarak yapabilirsiniz: +1. Depoyu bilgisayarınıza klonlayın. Bunu, **Kod** düğmesine tıklayıp URL'yi kopyalayarak yapabilirsiniz: [CodeSpace](./images/createcodespace.png) - Ardından, [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) içindeki [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) uygulamasını açın ve az önce kopyaladığınız URL'yi `` ile değiştirerek aşağıdaki komutu çalıştırın: + Ardından, [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) içindeki [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) açın ve aşağıdaki komutu çalıştırın. `` yerine az önce kopyaladığınız URL'yi yazın: ```bash git clone ``` -2. Visual Studio Code'da klasörü açın. Bunu, **Dosya** > **Klasör Aç** seçeneğine tıklayarak ve az önce klonladığınız klasörü seçerek yapabilirsiniz. +2. Klasörü Visual Studio Code'da açın. Bunu, **Dosya** > **Klasör Aç** seçeneğine tıklayarak ve az önce klonladığınız klasörü seçerek yapabilirsiniz. > Önerilen Visual Studio Code uzantıları: > -> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - Visual Studio Code içinde HTML sayfalarını önizlemek için -> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - Kod yazma hızınızı artırmak için +> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - HTML sayfalarını Visual Studio Code içinde önizlemek için +> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - kod yazma hızınızı artırmak için ## 📂 Her ders şunları içerir: -- isteğe bağlı çizim notu +- isteğe bağlı çizim notları - isteğe bağlı ek video - ders öncesi ısınma testi - yazılı ders @@ -140,119 +142,122 @@ Bu müfredatı bilgisayarınızda yerel olarak çalıştırmak için bir metin e - ödev - [ders sonrası test](https://ff-quizzes.netlify.app/web/) -> **Testler hakkında bir not**: Tüm testler Quiz-app klasöründe yer alır, toplamda 48 test ve her biri üç sorudan oluşur. Testler [burada](https://ff-quizzes.netlify.app/web/) mevcuttur. Test uygulaması yerel olarak çalıştırılabilir veya Azure'a dağıtılabilir; `quiz-app` klasöründeki talimatları takip edin. +> **Testler hakkında bir not**: Tüm testler Quiz-app klasöründe yer alır, her biri üç sorudan oluşan toplam 48 test vardır. Testlere [buradan](https://ff-quizzes.netlify.app/web/) ulaşabilirsiniz. Test uygulaması yerel olarak çalıştırılabilir veya Azure'a dağıtılabilir; `quiz-app` klasöründeki talimatları izleyin. ## 🗃️ Dersler | | Proje Adı | Öğretilen Kavramlar | Öğrenme Hedefleri | Bağlantılı Ders | Yazar | | :-: | :------------------------------------------------------: | :--------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------: | :---------------------: | -| 01 | Başlangıç | Programlamaya Giriş ve Kullanılan Araçlar | Çoğu programlama dilinin temel prensiplerini ve profesyonel geliştiricilerin işlerini yapmalarına yardımcı olan yazılımları öğrenin | [Programlama Dillerine ve Araçlarına Giriş](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine | -| 02 | Başlangıç | GitHub Temelleri, ekip çalışması dahil | Projenizde GitHub'ı nasıl kullanacağınızı, bir kod tabanında başkalarıyla nasıl iş birliği yapacağınızı öğrenin | [GitHub'a Giriş](./1-getting-started-lessons/2-github-basics/README.md) | Floor | -| 03 | Başlangıç | Erişilebilirlik | Web erişilebilirliğinin temellerini öğrenin | [Erişilebilirlik Temelleri](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | -| 04 | JS Temelleri | JavaScript Veri Türleri | JavaScript veri türlerinin temellerini öğrenin | [Veri Türleri](./2-js-basics/1-data-types/README.md) | Jasmine | +| 01 | Başlarken | Programlamaya Giriş ve Kullanılan Araçlar | Çoğu programlama dilinin temel prensiplerini ve profesyonel geliştiricilerin işlerini yapmalarına yardımcı olan yazılımları öğrenin | [Programlama Dillerine ve Araçlarına Giriş](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine | +| 02 | Başlarken | GitHub Temelleri, ekip çalışması dahil | Projenizde GitHub'ı nasıl kullanacağınızı, bir kod tabanında başkalarıyla nasıl iş birliği yapacağınızı öğrenin | [GitHub'a Giriş](./1-getting-started-lessons/2-github-basics/README.md) | Floor | +| 03 | Başlarken | Erişilebilirlik | Web erişilebilirliğinin temellerini öğrenin | [Erişilebilirlik Temelleri](./1-getting-started-lessons/3-accessibility/README.md) | Christopher | +| 04 | JS Temelleri | JavaScript Veri Türleri | JavaScript veri türlerinin temelleri | [Veri Türleri](./2-js-basics/1-data-types/README.md) | Jasmine | | 05 | JS Temelleri | Fonksiyonlar ve Metotlar | Bir uygulamanın mantık akışını yönetmek için fonksiyonlar ve metotlar hakkında bilgi edinin | [Fonksiyonlar ve Metotlar](./2-js-basics/2-functions-methods/README.md) | Jasmine ve Christopher | | 06 | JS Temelleri | JS ile Karar Verme | Kodunuzda karar verme yöntemlerini kullanarak koşullar oluşturmayı öğrenin | [Karar Verme](./2-js-basics/3-making-decisions/README.md) | Jasmine | | 07 | JS Temelleri | Diziler ve Döngüler | JavaScript'te diziler ve döngüler kullanarak verilerle çalışın | [Diziler ve Döngüler](./2-js-basics/4-arrays-loops/README.md) | Jasmine | -| 08 | [Terrarium](./3-terrarium/solution/README.md) | HTML Uygulamada | Çevrimiçi bir teraryum oluşturmak için HTML yapısını oluşturun, düzen oluşturmaya odaklanın | [HTML'e Giriş](./3-terrarium/1-intro-to-html/README.md) | Jen | -| 09 | [Terrarium](./3-terrarium/solution/README.md) | CSS Uygulamada | Çevrimiçi teraryumu stilize etmek için CSS oluşturun, CSS'in temellerine ve sayfayı duyarlı hale getirmeye odaklanın | [CSS'e Giriş](./3-terrarium/2-intro-to-css/README.md) | Jen | -| 10 | [Terrarium](./3-terrarium/solution/README.md) | JavaScript Kapanışlar, DOM Manipülasyonu | Teraryumu sürükle/bırak arayüzü olarak çalıştırmak için JavaScript oluşturun, kapanışlara ve DOM manipülasyonuna odaklanın | [JavaScript Kapanışlar, DOM Manipülasyonu](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | +| 08 | [Terrarium](./3-terrarium/solution/README.md) | HTML Uygulamada | Bir çevrimiçi teraryum oluşturmak için HTML yapısını oluşturun, bir düzen oluşturma üzerine odaklanın | [HTML'ye Giriş](./3-terrarium/1-intro-to-html/README.md) | Jen | +| 09 | [Terrarium](./3-terrarium/solution/README.md) | CSS Uygulamada | Çevrimiçi teraryumu stilize etmek için CSS oluşturun, CSS'in temellerine odaklanarak sayfayı duyarlı hale getirin | [CSS'ye Giriş](./3-terrarium/2-intro-to-css/README.md) | Jen | +| 10 | [Terrarium](./3-terrarium/solution/README.md) | JavaScript Kapanışlar, DOM Manipülasyonu | Teraryumu bir sürükle/bırak arayüzü olarak çalıştırmak için JavaScript oluşturun, kapanışlar ve DOM manipülasyonu üzerine odaklanın | [JavaScript Kapanışlar, DOM Manipülasyonu](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | | 11 | [Yazma Oyunu](./4-typing-game/solution/README.md) | Bir Yazma Oyunu Oluşturma | JavaScript uygulamanızın mantığını yönlendirmek için klavye olaylarını nasıl kullanacağınızı öğrenin | [Olay Tabanlı Programlama](./4-typing-game/typing-game/README.md) | Christopher | -| 12 | [Yeşil Tarayıcı Uzantısı](./5-browser-extension/solution/README.md) | Tarayıcılarla Çalışma | Tarayıcıların nasıl çalıştığını, tarihçesini ve bir tarayıcı uzantısının ilk öğelerini nasıl oluşturacağınızı öğrenin | [Tarayıcılar Hakkında](./5-browser-extension/1-about-browsers/README.md) | Jen | -| 13 | [Yeşil Tarayıcı Uzantısı](./5-browser-extension/solution/README.md) | Bir form oluşturma, bir API çağırma ve değişkenleri yerel depolamada saklama | Yerel depolamada saklanan değişkenleri kullanarak bir API çağırmak için tarayıcı uzantınızın JavaScript öğelerini oluşturun | [API'ler, Formlar ve Yerel Depolama](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | -| 14 | [Yeşil Tarayıcı Uzantısı](./5-browser-extension/solution/README.md) | Tarayıcıdaki arka plan işlemleri, web performansı | Uzantının simgesini yönetmek için tarayıcının arka plan işlemlerini kullanın; web performansı ve bazı optimizasyonlar hakkında bilgi edinin | [Arka Plan Görevleri ve Performans](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | -| 15 | [Uzay Oyunu](./6-space-game/solution/README.md) | JavaScript ile Daha Gelişmiş Oyun Geliştirme | Bir oyun oluşturma hazırlığında Sınıflar ve Kompozisyon kullanarak Kalıtım ve Yayın/Abonelik modelini öğrenin | [Gelişmiş Oyun Geliştirmeye Giriş](./6-space-game/1-introduction/README.md) | Chris | -| 16 | [Uzay Oyunu](./6-space-game/solution/README.md) | Tuval Üzerine Çizim | Ekrana öğeler çizmek için kullanılan Canvas API'sini öğrenin | [Tuval Üzerine Çizim](./6-space-game/2-drawing-to-canvas/README.md) | Chris | -| 17 | [Uzay Oyunu](./6-space-game/solution/README.md) | Öğeleri ekran üzerinde hareket ettirme | Öğelerin Kartezyen koordinatları ve Canvas API'si kullanılarak nasıl hareket edebileceğini keşfedin | [Öğeleri Ekranda Hareket Ettirme](./6-space-game/3-moving-elements-around/README.md) | Chris | -| 18 | [Uzay Oyunu](./6-space-game/solution/README.md) | Çarpışma Algılama | Öğelerin birbirleriyle çarpışmasını ve tepki vermesini sağlayın, tuş vuruşlarını kullanarak performansı artırmak için bir soğuma fonksiyonu ekleyin | [Çarpışma Algılama](./6-space-game/4-collision-detection/README.md) | Chris | +| 12 | [Yeşil Tarayıcı Eklentisi](./5-browser-extension/solution/README.md) | Tarayıcılarla Çalışma | Tarayıcıların nasıl çalıştığını, tarihçesini ve bir tarayıcı eklentisinin ilk öğelerini nasıl oluşturacağınızı öğrenin | [Tarayıcılar Hakkında](./5-browser-extension/1-about-browsers/README.md) | Jen | +| 13 | [Yeşil Tarayıcı Eklentisi](./5-browser-extension/solution/README.md) | Bir form oluşturma, bir API çağırma ve değişkenleri yerel depolamada saklama | Tarayıcı eklentinizin JavaScript öğelerini, yerel depolamada saklanan değişkenleri kullanarak bir API çağırmak için oluşturun | [API'ler, Formlar ve Yerel Depolama](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | +| 14 | [Yeşil Tarayıcı Eklentisi](./5-browser-extension/solution/README.md) | Tarayıcıdaki arka plan süreçleri, web performansı | Tarayıcının arka plan süreçlerini eklentinin simgesini yönetmek için kullanın; web performansı ve bazı optimizasyonlar hakkında bilgi edinin | [Arka Plan Görevleri ve Performans](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | +| 15 | [Uzay Oyunu](./6-space-game/solution/README.md) | JavaScript ile Daha İleri Düzey Oyun Geliştirme | Bir oyun oluşturma hazırlığında, hem Sınıflar hem de Kompozisyon kullanarak Kalıtım ve Yayın/Abone modelini öğrenin | [İleri Düzey Oyun Geliştirmeye Giriş](./6-space-game/1-introduction/README.md) | Chris | +| 16 | [Uzay Oyunu](./6-space-game/solution/README.md) | Tuvale Çizim | Ekrana öğeler çizmek için kullanılan Canvas API'si hakkında bilgi edinin | [Tuvale Çizim](./6-space-game/2-drawing-to-canvas/README.md) | Chris | +| 17 | [Uzay Oyunu](./6-space-game/solution/README.md) | Ekranda öğeleri hareket ettirme | Öğelerin kartesyen koordinatları ve Canvas API'si kullanılarak nasıl hareket kazandığını keşfedin | [Öğeleri Hareket Ettirme](./6-space-game/3-moving-elements-around/README.md) | Chris | +| 18 | [Uzay Oyunu](./6-space-game/solution/README.md) | Çarpışma Tespiti | Öğelerin birbirleriyle çarpışmasını ve tepki vermesini sağlayın, tuş vuruşlarını kullanarak ve oyunun performansını sağlamak için bir soğuma fonksiyonu ekleyin | [Çarpışma Tespiti](./6-space-game/4-collision-detection/README.md) | Chris | | 19 | [Uzay Oyunu](./6-space-game/solution/README.md) | Puan Tutma | Oyunun durumu ve performansına dayalı matematiksel hesaplamalar yapın | [Puan Tutma](./6-space-game/5-keeping-score/README.md) | Chris | -| 20 | [Uzay Oyunu](./6-space-game/solution/README.md) | Oyunu Bitirme ve Yeniden Başlatma | Oyunu bitirme ve yeniden başlatma, varlıkları temizleme ve değişken değerlerini sıfırlama hakkında bilgi edinin | [Bitirme Koşulu](./6-space-game/6-end-condition/README.md) | Chris | -| 21 | [Bankacılık Uygulaması](./7-bank-project/solution/README.md) | Bir Web Uygulamasında HTML Şablonları ve Yönlendirmeler | Yönlendirme ve HTML şablonları kullanarak çok sayfalı bir web sitesinin mimarisini nasıl oluşturacağınızı öğrenin | [HTML Şablonları ve Yönlendirmeler](./7-bank-project/1-template-route/README.md) | Yohan | +| 20 | [Uzay Oyunu](./6-space-game/solution/README.md) | Oyunu Bitirme ve Yeniden Başlatma | Oyunu bitirme ve yeniden başlatma, varlıkları temizleme ve değişken değerlerini sıfırlama hakkında bilgi edinin | [Bitiş Koşulu](./6-space-game/6-end-condition/README.md) | Chris | +| 21 | [Bankacılık Uygulaması](./7-bank-project/solution/README.md) | Bir Web Uygulamasında HTML Şablonları ve Yönlendirme | Çok sayfalı bir web sitesinin mimarisini yönlendirme ve HTML şablonları kullanarak nasıl oluşturacağınızı öğrenin | [HTML Şablonları ve Yönlendirme](./7-bank-project/1-template-route/README.md) | Yohan | | 22 | [Bankacılık Uygulaması](./7-bank-project/solution/README.md) | Giriş ve Kayıt Formu Oluşturma | Formlar oluşturma ve doğrulama rutinlerini yönetme hakkında bilgi edinin | [Formlar](./7-bank-project/2-forms/README.md) | Yohan | -| 23 | [Bankacılık Uygulaması](./7-bank-project/solution/README.md) | Verileri Alma ve Kullanma Yöntemleri | Verilerin uygulamanıza nasıl girip çıktığını, nasıl alınacağını, saklanacağını ve işleneceğini öğrenin | [Veriler](./7-bank-project/3-data/README.md) | Yohan | -| 24 | [Bankacılık Uygulaması](./7-bank-project/solution/README.md) | Durum Yönetimi Kavramları | Uygulamanızın durumunu nasıl koruduğunu ve bunu programlı olarak nasıl yöneteceğinizi öğrenin | [Durum Yönetimi](./7-bank-project/4-state-management/README.md) | Yohan | +| 23 | [Bankacılık Uygulaması](./7-bank-project/solution/README.md) | Veri Alma ve Kullanma Yöntemleri | Verilerin uygulamanıza nasıl girip çıktığını, nasıl alındığını, saklandığını ve atıldığını öğrenin | [Veri](./7-bank-project/3-data/README.md) | Yohan | +| 24 | [Bankacılık Uygulaması](./7-bank-project/solution/README.md) | Durum Yönetimi Kavramları | Uygulamanızın durumu nasıl koruduğunu ve bunu programlı bir şekilde nasıl yöneteceğinizi öğrenin | [Durum Yönetimi](./7-bank-project/4-state-management/README.md) | Yohan | | 25 | [Tarayıcı/VScode Kod](../../8-code-editor) | VScode ile Çalışma | Bir kod editörü kullanmayı öğrenin | [VScode Kod Editörünü Kullanma](./8-code-editor/1-using-a-code-editor/README.md) | Chris | | 26 | [AI Asistanları](./9-chat-project/README.md) | AI ile Çalışma | Kendi AI asistanınızı nasıl oluşturacağınızı öğrenin | [AI Asistanı Projesi](./9-chat-project/README.md) | Chris | ## 🏫 Pedagoji -Müfredatımız iki temel pedagojik ilkeye dayalı olarak tasarlanmıştır: +Müfredatımız iki temel pedagojik ilkeye göre tasarlanmıştır: * proje tabanlı öğrenme * sık sık yapılan testler -Program, JavaScript, HTML ve CSS'in temellerini, ayrıca günümüz web geliştiricilerinin kullandığı en son araç ve teknikleri öğretir. Öğrenciler, yazma oyunu, sanal teraryum, çevre dostu tarayıcı uzantısı, uzay istilacı tarzı oyun ve işletmeler için bir bankacılık uygulaması oluşturarak pratik deneyim kazanma fırsatına sahip olacaklar. Serinin sonunda öğrenciler web geliştirme konusunda sağlam bir anlayış kazanmış olacaklar. +Program, JavaScript, HTML ve CSS'in temellerini, ayrıca günümüz web geliştiricilerinin kullandığı en son araç ve teknikleri öğretir. Öğrenciler, bir yazma oyunu, sanal teraryum, çevre dostu bir tarayıcı eklentisi, uzay istilacı tarzı bir oyun ve işletmeler için bir bankacılık uygulaması oluşturarak uygulamalı deneyim kazanma fırsatına sahip olacaklar. Serinin sonunda, öğrenciler web geliştirme konusunda sağlam bir anlayış kazanmış olacaklar. > 🎓 Bu müfredattaki ilk birkaç dersi Microsoft Learn'de bir [Öğrenme Yolu](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) olarak alabilirsiniz! -İçeriğin projelerle uyumlu olmasını sağlayarak süreç öğrenciler için daha ilgi çekici hale getirilir ve kavramların kalıcılığı artırılır. Ayrıca, JavaScript temellerini tanıtmak için birkaç başlangıç dersi yazdık ve bunları "[JavaScript'e Başlangıç Serisi](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" video eğitim koleksiyonundan bir video ile eşleştirdik. Bu koleksiyonun bazı yazarları bu müfredata katkıda bulunmuştur. +İçeriğin projelerle uyumlu olmasını sağlayarak, süreç öğrenciler için daha ilgi çekici hale getirilir ve kavramların kalıcılığı artırılır. Ayrıca, JavaScript temellerini tanıtmak için birkaç başlangıç dersi yazdık ve bunları "[JavaScript'e Başlangıç Serisi](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" video eğitim koleksiyonundan bir video ile eşleştirdik. Bu koleksiyonun bazı yazarları bu müfredata katkıda bulunmuştur. -Ek olarak, bir sınıftan önce yapılan düşük riskli bir test, öğrencinin bir konuyu öğrenmeye yönelik niyetini belirlerken, sınıf sonrası yapılan ikinci bir test daha fazla kalıcılığı sağlar. Bu müfredat esnek ve eğlenceli olacak şekilde tasarlanmıştır ve tamamı veya bir kısmı alınabilir. Projeler küçük başlar ve 12 haftalık döngünün sonunda giderek daha karmaşık hale gelir. +Buna ek olarak, bir sınıftan önce yapılan düşük riskli bir test, öğrencinin bir konuyu öğrenmeye yönelik niyetini belirlerken, sınıf sonrası yapılan ikinci bir test daha fazla kalıcılığı sağlar. Bu müfredat esnek ve eğlenceli olacak şekilde tasarlanmıştır ve tamamı ya da bir kısmı alınabilir. Projeler küçük başlar ve 12 haftalık döngünün sonunda giderek daha karmaşık hale gelir. -JavaScript çerçevelerini tanıtmaktan özellikle kaçınarak, bir çerçeve benimsemeden önce bir web geliştirici olarak ihtiyaç duyulan temel becerilere odaklandık. Bu müfredatı tamamladıktan sonra iyi bir sonraki adım, başka bir video koleksiyonu aracılığıyla Node.js hakkında bilgi edinmek olacaktır: "[Node.js'e Başlangıç Serisi](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)". +JavaScript çerçevelerini tanıtmaktan özellikle kaçınarak, bir çerçeve benimsemeden önce bir web geliştiricisi olarak ihtiyaç duyulan temel becerilere odaklandık. Bu müfredatı tamamladıktan sonra iyi bir sonraki adım, başka bir video koleksiyonu olan "[Node.js'e Başlangıç Serisi](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)" hakkında bilgi edinmek olacaktır. -> [Davranış Kuralları](CODE_OF_CONDUCT.md) ve [Katkı Sağlama](CONTRIBUTING.md) yönergelerimizi ziyaret edin. Yapıcı geri bildirimlerinizi memnuniyetle karşılıyoruz! +> [Davranış Kuralları](CODE_OF_CONDUCT.md) ve [Katkıda Bulunma](CONTRIBUTING.md) yönergelerimize göz atın. Yapıcı geri bildirimlerinizi memnuniyetle karşılıyoruz! ## 🧭 Çevrimdışı erişim -Bu belgeleri [Docsify](https://docsify.js.org/#/) kullanarak çevrimdışı çalıştırabilirsiniz. Bu depoyu çatallayın, [Docsify'i yükleyin](https://docsify.js.org/#/quickstart) yerel makinenize yükleyin ve ardından bu deponun kök klasöründe `docsify serve` yazın. Web sitesi localhost'unuzda 3000 numaralı portta sunulacaktır: `localhost:3000`. +Bu dokümantasyonu [Docsify](https://docsify.js.org/#/) kullanarak çevrimdışı çalıştırabilirsiniz. Bu depoyu çatallayın, [Docsify'i yükleyin](https://docsify.js.org/#/quickstart) ve ardından bu deponun kök klasöründe `docsify serve` yazın. Web sitesi, localhost'unuzda `localhost:3000` adresinde 3000 portunda sunulacaktır. ## 📘 PDF -Tüm derslerin PDF'sini [burada](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf) bulabilirsiniz. +Tüm derslerin PDF'sine [buradan](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf) ulaşabilirsiniz. ## 🎒 Diğer Kurslar Ekibimiz başka kurslar da üretiyor! Şunlara göz atın: -### Azure / Edge / MCP / Agents + +### Azure / Edge / MCP / Ajanlar [![AZD for Beginners](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst) -[![Yeni Başlayanlar için Edge AI](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst) -[![Yeni Başlayanlar için MCP](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst) -[![Yeni Başlayanlar için AI Agents](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst) +[![Edge AI for Beginners](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst) +[![MCP for Beginners](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst) +[![AI Agents for Beginners](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst) --- ### Üretken Yapay Zeka Serisi -[![Yeni Başlayanlar için Üretken Yapay Zeka](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst) -[![Üretken Yapay Zeka (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst) -[![Üretken Yapay Zeka (Java)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst) -[![Üretken Yapay Zeka (JavaScript)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst) +[![Generative AI for Beginners](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst) +[![Generative AI (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst) +[![Generative AI (Java)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst) +[![Generative AI (JavaScript)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst) --- -### Temel Eğitim -[![Yeni Başlayanlar için Makine Öğrenimi](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst) -[![Yeni Başlayanlar için Veri Bilimi](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst) -[![Yeni Başlayanlar için Yapay Zeka](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst) -[![Yeni Başlayanlar için Siber Güvenlik](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung) -[![Yeni Başlayanlar için Web Geliştirme](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst) -[![Yeni Başlayanlar için IoT](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst) -[![Yeni Başlayanlar için XR Geliştirme](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst) +### Temel Öğrenim +[![ML for Beginners](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst) +[![Data Science for Beginners](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst) +[![AI for Beginners](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst) +[![Cybersecurity for Beginners](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung) +[![Web Dev for Beginners](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst) +[![IoT for Beginners](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst) +[![XR Development for Beginners](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst) --- ### Copilot Serisi -[![AI Destekli Programlama için Copilot](https://img.shields.io/badge/Copilot%20for%20AI%20Paired%20Programming-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst) -[![C#/.NET için Copilot](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst) -[![Copilot Macerası](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst) +[![Copilot for AI Paired Programming](https://img.shields.io/badge/Copilot%20for%20AI%20Paired%20Programming-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst) +[![Copilot for C#/.NET](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst) +[![Copilot Adventure](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst) ## Yardım Alma -Eğer takılırsanız veya yapay zeka uygulamaları oluşturma konusunda sorularınız olursa, katılın: +Eğer takılırsanız veya yapay zeka uygulamaları oluşturma konusunda sorularınız olursa, MCP hakkında tartışmalara katılabilirsiniz. Bu, soruların memnuniyetle karşılandığı ve bilginin özgürce paylaşıldığı destekleyici bir topluluktur. -[![Azure AI Foundry Discord](https://img.shields.io/badge/Discord-Azure_AI_Foundry_Community_Discord-blue?style=for-the-badge&logo=discord&color=5865f2&logoColor=fff)](https://aka.ms/foundry/discord) +[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG) -Eğer ürünle ilgili geri bildirimde bulunmak veya hata bildirmek isterseniz, ziyaret edin: +Eğer ürünle ilgili geri bildirimleriniz veya oluşturma sırasında hatalarınız varsa, şu adresi ziyaret edin: -[![Azure AI Foundry Developer Forum](https://img.shields.io/badge/GitHub-Azure_AI_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) +[![Microsoft Foundry Developer Forum](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum) ## Lisans -Bu depo MIT lisansı altında lisanslanmıştır. Daha fazla bilgi için [LICENSE](../../LICENSE) dosyasına bakabilirsiniz. +Bu depo MIT lisansı altında lisanslanmıştır. Daha fazla bilgi için [LICENSE](../../LICENSE) dosyasına bakın. --- + **Feragatname**: -Bu belge, AI çeviri hizmeti [Co-op Translator](https://github.com/Azure/co-op-translator) kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Belgenin orijinal dili, yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından kaynaklanan yanlış anlamalar veya yanlış yorumlamalar için sorumluluk kabul etmiyoruz. \ No newline at end of file +Bu belge, AI çeviri hizmeti [Co-op Translator](https://github.com/Azure/co-op-translator) kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Belgenin orijinal dili, yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından kaynaklanan yanlış anlamalar veya yanlış yorumlamalardan sorumlu değiliz. + \ No newline at end of file