Andi Peng: আমরা প্রায় সব psets মাধ্যমে. আসলে, আমরা সংখ্যাগরিষ্ঠ মাধ্যমে আছেন সবচেয়ে কঠিন psets এক. তাই আমরা ঠিক আসলে আছেন হাওয়া ধরনের যাচ্ছে পরবর্তী কয়েক সপ্তাহের মাধ্যমে. আমরা যে বিষয়ে কথা শুরু করতে যাচ্ছেন আমাদের চূড়ান্ত প্রকল্প, ঘটনা উত্ক্রান্ত আগামী কয়েক সপ্তাহের মধ্যে. এবং জীবন একটি হাওয়া হতে হবে. তাই অনতি আজ. আশা করছি, আসলে হাওয়া হবে আজকের জন্য এজেন্ডা মাধ্যমে, এবং তারপর এখান থেকে বের হতে হবে অনাবশ্যক কিছু সময় সঙ্গে. এছাড়াও, আমি ক্ষমাপ্রার্থী চাই ক্যান্ডি অভাব আজকের জন্য. আমি জানি না কেন. কিন্তু সপ্তাহে অগ্রসর হওয়ার হ্যালোইন, আমি ক্যান্ডি ভুলে যাবে. তাই আমি আসলে একটি সুবিশাল আছি এই মুহূর্তে আপনি হতাশা. আমি আক্ষরিক ক্যান্ডি মনে রাখবেন, কারণ প্রতি বর্গ একক, কিন্তু হ্যালোইন জন্য. কিন্তু পরের সপ্তাহে, আমি আনতে হবে ক্যান্ডি পরিমাণ দ্বিগুণ সব আপনার জন্য, যে জন্য সাইন আপ করতে. এটা মহান হবেন. তাই আমি ঘোষণা একটি দম্পতি আছে কিছু সময় নির্ধারণ সংক্রান্ত. আমি কিছু সিডিউলিং সমস্যা আছে. তারপর আমরা উপর সরানো চলুন chmod বলা কি বিষয়ে কথা বলতে. আমরা সম্পর্কে কথা বলতে যাচ্ছেন দ্রুত TCP / IP এর HTTP- র. এবং তারপর আমরা কোড চলুন আমাদের HTML এবং CSS এর ব্যবহার করে নিজের ওয়েবসাইটে. এবং তারপর আমি আসলে হয়তো ছেড়ে দেব 20 মিনিটের মত pset6 সম্পর্কে কথা বলার জন্য. Pset6 আসলে অনেক কারণ আমরা ইতিমধ্যেই আগে দেখা করেছি যে কাপড়, কিন্তু আমি রিফ্রেশ করতে চেয়েছিলেন ঐ ধারণার কিছু পাশাপাশি একটি দম্পতি নতুন ফাংশন শেখান হিসাবে. কুল. সুতরাং প্রথম সব, বিরতি থেকে ফিরে আসার জন্য স্বাগতম. আমি আপনি বিরতি ছিল উপভোগ্য আছেন আশা করি. আপনি বিরতির জন্য কি কি হবে? শ্রোতা: নিউ ইয়র্ক গিয়েছিলাম. Andi Peng: আপনি নিউ ইয়র্ক গিয়েছিলাম? আমি অর্ধেক আমাদের স্কুলে মনে নিউ ইয়র্ক গিয়েছিলাম. এটা ঠিক আছে. আমি আমার বিরতি অধিকাংশ ব্যয় বিছানায় Netflixing মধ্যে আসীন. এবং এটি একটি ভাল সময় ছিল. কিন্তু আমরা পিছন ফিরে এখন সেশন, ফিরে জিনিস সুইং. আমরা দুপুরে এই শুক্রবার কারণে একটি pset আছে. আমি আপনি ইতিমধ্যে করেছি মনে হ্যা, আপনার ব্যঙ্গ কুড়ান? তাই অন্য কেউ যারা আছে না, তাদের মো ছিল আসা এবং আপনার ক্যুইজ পেতে দয়া অধ্যায় শেষে আমার কাছ থেকে. অথবা ক্যাম্পাস আমাকে খুঁজিয়া বাহির. আমি কোথাও আমার সাথে থাকবে. আমাদের চূড়ান্ত প্রকল্পের প্রাক প্রস্তাবও. গ্রহণ না যারা আমাদের জন্য যারা সুতরাং আগে এই শ্রেণীর, CS50 এর দরকারি পাথরটিকে অনেক এই মধ্যে চরম হয় ছাত্র উত্থাপন করা যে গ্র্যান্ড প্রকল্প. এবং প্রাক প্রস্তাবনা, শুধু একটি সাধারণ ধারণা এক জন্য যা করতে চাইবেন তা তাদের প্রকল্প, যে ধারণা, সোমবার কারণে দুপুরে পরের সোমবার. তাই প্রায় কাছাকাছি, ডেভিড আমি মনে করি বক্তৃতায় এই বিষয়ে আরও কথা তিনি ব্যাহত হয়েছে. এবং একটি কঠিন পাতা আছে ব্যাখ্যা আমাদের ওয়েবসাইটে প্রকল্পের সব প্রয়োজনীয়তা. কিন্তু মূলত, বাছাই আপনি করেছি যে কোনো বিষয়ে আগ্রহী হয়েছে এখানে আপনার সময় জুড়ে সি এস এ, এটা গেমিং হতে কিনা বা নকশা বা ভিডিও বা কিছু. এবং যদি আপনি সত্যিই ধরনের হতে পারে এখন পাঠ কিছু প্রয়োগ আমরা উচ্চ CS50 মধ্যে এখানে শিখেছি করেছি যে, welcome-- আবহ অনেক সুন্দর করার আপনার পছন্দের একটি প্রকল্প চূড়ান্ত. যে সমস্ত কারণে সোমবার হয় ইমেইলের মাধ্যমে শুধু একটি সংক্ষিপ্ত সংক্ষিপ্ত প্রচার আমার, একটি দ্রুত বাক্য, আরে, মত, Andi, আমি নকশা সত্যিই আগ্রহী নই iOS জন্য এই আছে যে একটি খেলা. কুল. শুধু তোমার সংক্ষিপ্ত প্রাথমিক দিন আপনার চূড়ান্ত প্রকল্পের জন্য ধারনা. এবং এর মাধ্যমে আমরা কথা বলতে পারবেন কিনা বা না যে আসলে একটি ভাল ধারণা বা না, এটা একটি সম্ভাব্য ধারণা বা না হলে. কিন্তু শুধু প্রাক প্রস্তাব আগামী সোমবার কারণে. ভুল যে pset6, আমাদের সুদৃশ্য web--. Pset7? pset6? এটা ঠিক আছে, pset6 এর? pset6, আমাদের ওয়েব সার্ভার, কারণে দেরী দিনের সঙ্গে দুপুরে শুক্রবার. অফিস ঘন্টা সোমবার থেকে সাধারণত সারসংকলন বৃহস্পতিবার 8:00 থেকে 11:00 এই সপ্তাহ. আমি কমন্স মনে পরের তিন রাত. কুল. আমরা উপাদানের মধ্যে ছিল আগে, কেউ আছে কোনো প্রশ্ন, জোকস, গল্প আছে? আপনি পতনের বিরতির জন্য কি করলেন? শ্রোতা: আমি কি? Andi Peng: ইতিমধ্যে এটা আসলে আগে বয়সের এর. Christabel নিউ ইয়র্ক গিয়েছিলাম. আমি এখানে এবং Netflixed থাকুন. শ্রোতা: ওহ, হাঁ আমি এখানে ছিল. Andi Peng: ঠিক আছে, ওহ. শ্রোতা: আমি মনে করি না কি বিশেষভাবে. Andi Peng: এটা ঠিক আছে. শ্রোতা: Netflixing সম্ভবত. Andi Peng: Netflixing. হ্যা, এটা একটা ভাল সময়. ঠিক আছে. ঠিক আছে. কোন প্রশ্ন করার আগে আমরা উপাদান মধ্যে তিড়িং লাফ? এছাড়াও, আমরা চেষ্টা করে যাচ্ছেন অধ্যায় আজ মাধ্যমে গতি, আবরণ অনতি. আর আশা করছি, আমরা কিনবো এখানে একটি বিট আউট তাড়াতাড়ি. এছাড়াও না ক্যান্ডি, জন্য দুঃখিত. আমি একটি হতাশা আছি, বিশেষ করে হ্যালোইন সময়. ঠিক আছে. কুল. তাই আমরা যে বিষয়ে কথা শুরু করতে যাচ্ছেন একটি কমান্ড লাইন আর্গুমেন্ট chmod বলা. chmod, এটা সব ঠিক একটি ইউনিক্স সিস্টেম কমান্ড লাইন থেকে পরিচালিত কল ফাইল অনুমতি পরিবর্তন করার. সুতরাং উদাহরণস্বরূপ, আমরা করেছি সমস্ত একটি পৃষ্ঠায় সম্মুখীন এই মত সম্ভবত একদা মধ্যে একটি ইন্টারনেট হচ্ছে আমাদের আয়ু আমাদের ওয়েব সার্ভার আছে যেখানে ব্যবহারকারী, আমাদের নিষিদ্ধ এর ত্রুটি দেওয়া. আপনি, অ্যাক্সেস করার অনুমতি আছে না yadda, yadda, yadda, এই সার্ভারে. সমস্ত যে সত্যিই মানে অনুমতি যে হয় যে সংযুক্ত করা হয় যাই হোক না কেন আপনি যদি অ্যাক্সেস করার চেষ্টা করা হয় আপনার জন্য খোলা ছিল না. তাই প্রায় কাছাকাছি, chmod যা উপায় আমরা যারা সিস্টেম অনুমতি পরিবর্তন করতে পারেন সবাই দিতে, ব্যবহারকারী, দল, বিশ্বের, বা কোন বা যারা এক্সেস সমন্বয় নির্দিষ্ট ফাইল, ডিরেক্টরি, কিছু সত্যিই, সিস্টেমের কোন ধরণের উপর একটি অপারেটিং সিস্টেম. বলছি কোন আছে তাই আপনি যদি মনে করেন কম্পিউটার আজ আমার সঙ্গে বরাবর অনুসরণ মত, সম্পূর্ণভাবে শুধু কিছু টাইপ করার জন্য বিনা দ্বিধায় এ. যদি না হয়, আপনি শুধু থাকা যাবে. তাই আমি আসলে আনবো যাচ্ছে এই মুহূর্তে আমার টার্মিনাল. সুতরাং নিম্নলিখিত কমান্ডটি প্রয়োগ করুন chmod, বা অন্তত শুধু অনুমতি তালিকায় আপনার ফাইলের তালিকা, শুধু LS-L হয়. যেহেতু আপনি দেখতে পারেন, একটি গুচ্ছ স্টাফ যার বেশিরভাগ পপ আমাদের কাছে খুবই জরুরী এখানে বাম দিকে. আপনাকে বলছি টাকা, WS, 1 / একটি গুচ্ছ দেখতে. হ্যা. যারা শুধু মূলত হয় সব ফাইল অনুমতি কি নির্দিষ্ট ডিরেক্টরি ব্যাখ্যা করতে এবং আপনার সিস্টেমের মধ্যে ফাইল আছে. সুতরাং আসুন ফিরে যাই এখানে পাওয়ার পয়েন্ট. তাই ফাইলের নাম ছাড়াও আপনাকে বলছি ডানদিকে দেখতে পারেন, আমরা মূলত দেখতে খুঁজছেন Glosbe উপর শুধু কলাম. ছাড়াও, তাই শুধু ফাইলের নাম, আমরা ফাইলের অনুমতি দেখতে পারেন তাদের মালিক গ্রুপ, গ্রুপের নাম, তারিখ ফাইল শেষ পরিবর্তন হয়েছিল যে পরিবর্তিত, ইত্যাদি ইত্যাদি. আপনি যেমনটি chmod ব্যবহার জিনিস অনেক দেখতে পারেন. সুতরাং আমরা chmod পড়তে যে ভাবে যে হয় আমরা প্রায় কাছাকাছি উপেক্ষা প্রথম চিঠি ফাইন্যান্স অনুমতি পরিপ্রেক্ষিতে. প্রথম চিঠি শুধু আমাদেরকে বলে কি সিস্টেমের ধরন আমরা অ্যাক্সেস করছি. ডি, এই ক্ষেত্রে, একটি হল ফোল্ডার বা ডিরেক্টরি. তাই আমরা যে বর্তমানে আমার কর্মক্ষেত্র জানেন অধ্যায় সাত একটি ডিরেক্টরি ছিল. এবং তারপর আপনি তিনটি দেখতে Triads, মূলত শুধু তিনটি অক্ষর তিন সেট. এবং যদি আপনি একটি বিট হিসাবে প্রতিটি মনে করতে পারেন. তাই আপনি শুধু তিন সেট আছে তিনটি বিট, মোট নয়টি বিট. আপনি তিনটি দলের মধ্যে তাদের আচরণ. তাই তিনটি প্রথম গ্রুপ সবসময় আপনার ব্যবহারকারীর অনুমতি. তিনটি আপনার দ্বিতীয় গ্রুপ সবসময় আপনার দলের অনুমতি. এবং তিনটি আপনার তৃতীয় সেট সবসময় বিশ্বের মত হয় সর্বত্র অনুমতি. তাই আমি সহজ অনুমান জিজ্ঞাসা প্রশ্ন কি ব্যবহারকারী ও দলের মধ্যে পার্থক্য. মূল পার্থক্য ব্যবহারকারী ও দলের মধ্যে একজন ব্যবহারকারী আপনাকে ব্যক্তিগতভাবে শুধু হয় এটা ঠিক এখন যাই হোক না কেন অ্যাক্সেস. আপনি একাধিক আছে একটি গ্রুপ হতে পারে উদাহরণস্বরূপ এক কম্পিউটারে ব্যবহারকারীদের. তাদের সমস্ত একটি দল হিসেবে গণ্য করা যেতে পারে. এবং তারপর দুনিয়া শুধু বিশ্বের, সবাই. কিভাবে আমরা করতে পারেন, তাই আমরা পরে দেখতে পারেন বিভিন্ন অনুমতি মধ্যে যারা পরিবর্তন. তাই প্রায় কাছাকাছি, আমরা করছি এখনও ফোকাস যাচ্ছে বাম, যেখানে প্রথম অংশ ডিরেক্টরি CS50 জন্য আমরা drwx দেখতে R শুধু মানে যেখানে এটি পাঠযোগ্য. W শুধু এটা লিখনযোগ্য মানে. এবং তারপর এক্স শুধু এটা এক্সিকিউটেবল মানে. আপনি ধরনের মনে চাই এর অর্থে দেখা যায় না. এটা ই হওয়া উচিত. কিন্তু ধরনের আসলে x একটু ভাল কাজ আপনি ভাল এটা মনে করতে পারেন, কারণ. জিনিস তাই তিন ধরনের আপনি নির্বাচন করতে পারবেন, অথবা আপনি একটি ফাইল পড়তে পারেন, আপনি একটি লেখার অনুমতি থাকতে পারে ফাইল, অথবা আপনি অনুমতি আছে পারে একটি ফাইল চালানো. তাই উপায় যে আমরা আসলে বিট, তাঁদের প্রতিনিধিত্ব নম্বর 4, 2, এবং 1 হয়. তাই পাঠযোগ্য যে কিছু হয় 4 সংখ্যা দ্বারা প্রতিনিধিত্ব. লিখনযোগ্য যে কিছু 2 দ্বারা প্রতিনিধিত্ব করা হয়. এক্সিকিউটেবল যে আর কিছু যেমন 1 দ্বারা প্রতিনিধিত্ব. সুতরাং এই অর্থে, আমরা যা করতে পারেন এই সংখ্যার প্রতিনিধিত্ব হাই, একটি ভিন্ন ভাবে, স্বাগত জানাই. দুঃখিত. সবার আগে, আমি যাচ্ছি সবার পক্ষে ক্ষমাপ্রার্থী এখন ক্লাসে প্রবেশের. আমি আজ ক্যান্ডি ভুলে গেছি. আমি একটি ব্যর্থতা আছি আছি হ্যালোইন এই সপ্তাহে. আমি দ্বিগুণ পরিমাণ আনতে হবে ক্যান্ডি তা পূরণ করতে করতে পরবর্তী সময়. কিন্তু কোন পথে, দুঃখিত যে ছেলেরা সম্পর্কে, দুঃখিত. তাই উপায় যে আমরা ইনপুট আসলে পারেন আমাদের কমান্ড উপর যুক্তি আমরা হয় chmod গ্রুপ স্ল্যাশ অনুমতি না পারেন, যেখানে দলের শুধু যাই হোক না কেন গ্রুপ আমরা পরিবর্তন করতে চেষ্টা করছি. আর অনুমতি আছে আমরা এটি যোগ করতে চান যাই হোক না কেন. সুতরাং উদাহরণস্বরূপ, প্লাস অনুমতি যোগ, এবং বিয়োগ অনুমতি লাগে দূরে. এবং দলের ধরনের আমরা আমাদের একটি আছে সব জন্য, U ব্যবহারকারীদের জন্য, দলের জন্য গ্রাম, বা অন্যদের জন্য হে. এটা এই মুহূর্তে একটু বিমূর্ত. কিন্তু আমরা কয়েক উদাহরণ উপর যাবেন শুধু এই বাস্তব দ্রুত প্রকট. এই ভালো প্রত্যেকেরই স্লাইড, তাই আমি যেতে পারেন? কুল. সুতরাং উদাহরণস্বরূপ, rwx. আমরা এটা প্রতিনিধিত্ব সম্পর্কে আলাপ, সর্বপ্রথমে rwx এর অর্থ কী? আপনি এই নির্দিষ্ট দেখতে হলে ফাইল, rwx অনুমতি আছে মানে কি ব্যক্তি কাজ করতে সক্ষম হতে পারে? শ্রোতা: পড়ুন, লিখুন এবং চালানো. Andi Peng: হাঁ, ঠিক. আপনি রিড এবং নির্বাহ করতে পারেন. ঐ সব তিনটি কারণ অক্ষর উপস্থিত. আমরা আলাপ এগিয়ে যান এবং যদি তাই বিট পরিপ্রেক্ষিতে এই সম্পর্কে, rwx এছাড়াও 700 হিসাবে প্রতিনিধিত্ব করা যাবে. যদি আপনার কোন দেখতে পারেন কারণ ফাইলের ডিরেক্টরি অনুমতি সাজান, তিন Triads আছে. এই ক্ষেত্রে, শুধুমাত্র প্রথম ত্রয়ী আছে কিছু আছে. তাই এই ক্ষেত্রে, R 4 হয়, W 2, এবং এক্স 1 হয়. আপনি একসাথে ঐ যোগ করুন, এটি 7 এর. আর তাই আপনি যদি রূপান্তর এটা 700 এর বাইনারি. 7 কারণ প্রথম ত্রয়ী হয়. 0, বর্তমান কিছুই নেই দ্বিতীয় ত্রয়ী মধ্যে. এবং তারপর উপস্থিত কিছুই আছে তৃতীয় ত্রয়ী, যাতে অন্য 0 এর. সুতরাং Triads একই অর্থে, একটি গুচ্ছ শুধু, শুধু বিট প্রতিনিধিত্ব করা যাবে বাইনারি হিসাবে ভাল. সুতরাং 700 সঠিক একই জিনিস হিসাবে মানে অনুমতি পরিপ্রেক্ষিতে rwx ------. সবাই খুবই স্পষ্ট? কুল. আর তাই chmod 111 দিতে হবে ফাইলে যা অনুমতি? বলছি আপনি কয়েক দিন সেকেন্ডের এই রূপান্তর. , প্রথমে মনে রাখুন ত্রয়ী ব্যবহারকারীর জন্য হয়. দ্বিতীয় ত্রয়ী গ্রুপ জন্য. আর তৃতীয় ত্রয়ী সকলের জন্য. আর তাই chmod 111 দিতে হবে যা অনুমতি এবং যাদের টাইপ? একটি কয়েক সেকেন্ডের নিন এটা আমার মনে হয় এবং ফিরে আসা. হ্যা. শ্রোতা: তাই সবাই এটা নির্বাহ করতে পারেন. Andi Peng: হ্যাঁ, ঠিক. শ্রোতা: কিন্তু কেউ কিছু পড়তে বা লিখতে পারে. Andi Peng: এবং মুক্ত মনে সবাই ব্যাখ্যা করতে কিভাবে আপনি যে সিদ্ধান্তে উপনীত হয়েছেন. শ্রোতা: ওয়েল, ব্যবহারকারীর জন্য, গ্রুপ, এবং বিশ্বের, এটি সমস্ত এর 1 যা এক্সিকিউটেবল জন্য কোড. Andi Peng: হাঁ, ঠিক. সুতরাং 1, এই ক্ষেত্রে, আমরা জানি সব হয় যে এক্সিকিউটেবল কোড. ফাইন্যান্স 4 কারণ. লিখন 2 হয়. এবং এক্সিকিউটেবল 1 হয়. সুতরাং সব তিনটি Triads 1, যে হয় বিশ্বের যে, ব্যবহারকারী যাও মানে, এবং গ্রুপে তারা সব এক্সিকিউটেবল হয়. যে সাথে সবাই ভাল? ঠিক আছে. আর তাই দ্বিতীয় উপায় আমরা আসলে যা করতে পারেন যে আপনি হয় এই লিখুন শুধু chmod করতে পারে একটি প্লাস এক্স. একটি সব বা সবাই মানে. প্লাস অনুমতি দেবার মানে. এবং তারপর এক্স এক্সিকিউটেবল মানে. সুতরাং দুটি কমান্ড আছে আসলে অভিন্ন. আপনি চালাতে চান তাহলে তাই আপনার টার্মিনালে এই, আপনি, নাম 111 chmod না আপনার ডিরেক্টরি বা আপনার ফাইল. অথবা আপনি একটি প্লাস X chmod করতে পারেন, আপনার ডিরেক্টরির ফাইলের নাম. একই জিনিস, শুধু একটি সহজ উপায়, সম্ভবত, কিছু উপস্থাপন করে বা পরিবর্তন করার জন্য ফাইলের অনুমতি. Chmod সঙ্গে প্রতি এক ওকে আগে আমরা এগিয়ে যেতে? কুল. তাই এখন আমরা একটি মধ্যে আগাইয়া যাও চলুন খুব বিমূর্ত ধারণার কয়েক স্লাইড আমি প্রায় কাছাকাছি আছি মাধ্যমে হাওয়া যাচ্ছে. আর আপনার যদি সম্পূর্ণই ঠিক আছে সবকিছু বুঝতে পারছি না. এমনকি এখন, আমি এখনও সত্যিই না সম্পূর্ণ সবকিছু বুঝতে. কিন্তু এটা পাবার আরো উপরের স্তর বোঝার এইসব জিনিস কিছু কাজ কিভাবে. তাই আমরা কথা বলতে যাচ্ছেন দ্রুত TCP / IP এর সম্পর্কে, যা শুধু ট্রান্সমিশন কন্ট্রোল হয় প্রোটোকল ইন্টারনেট প্রটোকল কাট. বক্তৃতা থেকে প্রত্যাহার, ডেভিড, তিনি আপনাকে শেখানো হয়নি তিনি পাস চাই যেখানে যেমন একটি খাম নোট বক্তৃতা হল উপরের মত আপ? আইন স্কুল মিলনায়তনে তাই ডেভিড মূলত প্রদর্শিত কিভাবে করে TCP / IP কাজ অর্থে যে সব যে তথ্য নিশ্চিত করার একটি উপায় হল একটি সার্ভার জুড়ে বিতরণ করা হয়েছে অথবা ইন্টারনেটের উপর. খাম উদাহরনে এবং বার্তা, শেষে ব্যবহারকারী দেখতে পারে, ওহ, আমি প্রয়োজন তথ্য চার প্যাকেট পাবেন. কিন্তু আমি আসলে শুধুমাত্র তিনটি প্রাপ্তি. যে আমি এক অনুপস্থিত করা আবশ্যক মানে. আর এক বিতরিত হয় নি. আর তাই বিভিন্ন TCP / ইন্টারনেটে আইপি, আপনার কম্পিউটার এবং সার্ভারের মাধ্যমে, সঠিক একই জিনিস আছে. এটা আছে সব একটি উল্লেখ করা হয় কাঠামো, যা একটি হারিয়ে ডাটা প্যাকেট তীব্র বিরক্তি ও প্রাপ্ত করা যাবে. ইন্টারনেটে মত আপনি চেষ্টা করছেন অনলাইন ফাইল অ্যাক্সেস বা ফাইল পাঠাতে * আপনার বন্ধু বা ওয়েব তাকান ব্রাউজার, হাজার হাজার বিলিয়ান এবং কোটি কোটি তথ্য বাইট মিলিসেকেন্ডে প্রতি স্থানান্তরিত করা হয়. আর এটা সত্যিই সত্যিই বিভ্রান্তিকর. আর এটা করতে সত্যিই কঠিন আসলে পাঠানো হয়েছে কি না জানি এবং তা পাঠানো হয়েছে না. আর তাই করে TCP / IP শুধু নির্দিষ্ট করে একটি সংযোজক কাঠামো যা আপনার ওয়েব মধ্যে ব্রাউজার এবং আপনার সার্ভার ধরনের যোগাযোগ করতে পারেন একে অপরের সাথে, শুধু প্যাকেট আছে নিশ্চিত সব এখানে এবং কিছুই এর হারিয়ে আপনার অনুরোধ করা সমস্ত তথ্য আসলে সঠিকভাবে প্রদর্শন করা হয়. শুধু যে খুব ওকে সবাই সংক্ষিপ্ত উচ্চ পর্যায়ের বুঝতে? কুল. তখন আমরা সরাতে চলুন , HTTP- র নিয়ে ব্যাপক আলোচনা যা শুধু হাইপারটেক্সট ট্রান্সফার প্রোটোকল. HTTP- র, এটা সব যাই হোক না কেন কোনো পাতা অথবা ফাইল আপনার ওয়েবসাইটে ব্যবহার করা হয় সার্ভার একটি HTTP ফেরৎ প্রতিক্রিয়ায় অবস্থা কোড অনুরোধ এমনটা নিশ্চিত করা যে হয়, ওহ, এই অনুরোধটি মাধ্যমে গিয়েছিলাম. এবং সবকিছু সঠিকভাবে প্রদর্শন. অথবা, ওহ, না, 404. কিছু ভুল হয়েছে. ওহ, আমি দেখাতে পারবো না. এটা সব যাই হোক না কেন যে আপনি, অ্যাক্সেস করার চেষ্টা করছেন ব্যবহারকারী হিসাবে ব্যবহার, অ্যাক্সেস করার চেষ্টা করছে internet-- শুধু নিশ্চিত করে আপনি পারেন সফলভাবে আছে এটা ছিল বা না যাই হোক না কেন ব্যবহার সফলভাবে যাই হোক এটা ছিল অ্যাক্সেস. আর তাই HTTP- র অবস্থা কোড শুধু আপনি উপলব্ধ কি না তা জানতে পারবে একটি উপায় বা না এটা সফল বা ছিল না. সুতরাং উদাহরণস্বরূপ, একটি উদাহরণ অনুরোধ. আপনি এটা এখানে দেখতে পারেন সাধারণত সাধারণত চারটি লাইন. আমরা শুধু যা একটি GET HTTP- র 1.1, আছে পদ্ধতি অনুরোধ ইউআরএল, প্রোটোকল সংস্করণ, ক্ষেত্র নাম, এবং ক্ষেত্র মান. তাই কোন প্রয়োজন সম্পূর্ণভাবে এখানে কিছু মুখস্থ. শুধু ধরনের পরিচিত এই দেখুন কিভাবে সঙ্গে নিজেকে. এই উদাহরণে, পদ্ধতি অনুরোধ URL টি ঠিক যাই হোক না কেন অনুরোধ আপনি সার্ভার প্রেরণ করা হয়. আরে, ভালো লেগেছে, সার্ভার, আমি সত্যিই চাই প্রবেশাধিকার yadda, yadda, yadda, HTTP- র পৃষ্ঠা. প্রোটোকল সংস্করণ শুধু যাই হোক না কেন সংস্করণ আপনার হোস্ট অথবা আপনার সার্ভার তথ্য অ্যাক্সেস করতে ব্যবহার করা হয়. ক্ষেত্র নাম ওয়েবসাইটে বা হয় আপনি অ্যাক্সেস করার চেষ্টা করছেন যে URL টি, এই ক্ষেত্রে, www.apple.com এ. আর ক্ষেত্রের মান শুধু সাধারণত, মান নাম. আর এটা সমন্বয় কোন ধরণের হতে পারে অক্ষর বা সংখ্যা বা যাই হোক না কেন এর. তাই একজন সাধারণ অনুরোধ, তাই কি আপনার কম্পিউটার আসলে আরে, বলছেন যে সার্ভারে পাঠায়, আপনি, আমি এই প্রদর্শন প্রয়োজন কি জানেন যে অনুরোধ ধরনের তারা আসলে পাবেন যে. কি একটি উদাহরণ প্রতিক্রিয়া সার্ভার আপনাকে ফেরত পাঠাতে হবে প্রায় কাছাকাছি একই জিনিস হবে, উপরের একটি স্টেটাস কোডের ছাড়া. সুতরাং 200, 2 0 0 সর্বদা ওকে জন্য স্ট্যাটাস কোড. ভালো লেগেছে, ঠিক আছে, এই অনুরোধটি মাধ্যমে গিয়েছিলাম. আপনি অ্যাক্সেস করতে সক্ষম ছিল সঠিকভাবে সবকিছু. জীবন সুন্দর. জীবন জরিমানা. সবকিছু একেবারে ভাল. আর তাই এই মাত্র আপনার ব্রাউজার বলে এবং আপনার সার্ভার, আরে, সবকিছু এর ভাল. আমি প্রয়োজন সমস্ত তথ্য পেয়েছিলাম. কুল. কিন্তু সমস্যা হল কখনও কখনও সমস্যা আসা পর্যন্ত আপনি আমি মনে হয় শেষ থাকতে হলে আমি সদৃশ সম্পর্কে বললাম. আপনি কম ভাল প্রতিক্রিয়া আছে. উদাহরণস্বরূপ, 404 সুতরাং পৃষ্ঠা খুঁজে পাওয়া যায়নি হয়. আপনি মাঝে মাঝে একটি নিষিদ্ধ এক্সেস আছে. আপনি অন্যান্য বিভিন্ন আছে আমি যে অবস্থা সঙ্কেত আপনি যখন নিশ্চিত আপনি সব দেখা করেছি ইন্টারনেটে গবেষণা করতে চেষ্টা. এবং আপনার ব্রাউজার দেয় , কোন, ব্যবহার করতে সক্ষম নয়. আর আপনি বিষ্ঠা, ভাল, ভালো থাকেন. তাই শুধু অনেক সুন্দর, আছে কিছু প্রশংসনীয় সাধারণ অবস্থা সঙ্কেত. হয়তো নিজেকে পরিচিত কোনটি সঙ্গে যারা. মজাদার এক যে আমি কি কখনও শুনেছেন মনে র আপনি ঘটতে হলে তাদের সব সন্ধান অনলাইন, কোনো কারণে আছে আসলে একটি বাস্তব অবস্থা কোড আমি একটি চা তৈয়ারি করার পাত্র নই 418 বলা. আমি googled যেখানে এই উৎপত্তি থেকে ছিল. আর দৃশ্যত এক এপ্রিল ফুল ' আগে দিন কয়েক দশক, কেউ এটা অত্যধিক হাসিখুশি হতে চাই 418 নামে একটি নতুন অবস্থা কোড তৈরি করতে আমি একটি চা তৈয়ারি করার পাত্র নই. বৈধভাবে, এই নাম কোড আমি একটি চা তৈয়ারি করার পাত্র নই বলা হয়. আমি আপনাকে যা করতে হবে তা পৃষ্ঠার ভুলবেন আসলে এই প্রদর্শন করতে যান. কিন্তু দৃশ্যত, আপনি আসলে করতে পারেন আমি একটি অবস্থা কোড প্রাপ্ত একরকম একটি চা তৈয়ারি করার পাত্র কিছু কাজ দিয়ে. তাই আছে শত শত এবং স্টেটাস কোড শত শত. তাদের আরো কিছু করতে অন্যদের তুলনায় অর্থে. কিন্তু অনেক সুন্দর শুধু পরিচিত সবচেয়ে সাধারণ মানুষদের সাথে নিজেকে. অনুরোধ সত্তা শরীর দৃশ্যত, স্বল্প ও স্থুলকায়. তাই কখনও কখনও আরও আছে আমি চেয়ে ভয়ানক ত্রুটি একটি চা তৈয়ারি করার পাত্র নই. কিন্তু এই আমি অনুমান যে এক আপনি যে ধরনের আঘাত করি. কিন্তু আমি আপনি কি মনে করেন না. শুধু অবস্থা ভালো প্রত্যেকেরই সঙ্কেত, অনুরোধ, প্রসেস, নির্মানের নিশ্চিত তথ্য সঠিকভাবে বিতরণ করা হয়? তাই এখন আমরা রূপান্তর করতে যাচ্ছেন অধ্যায় একটি মজার অংশ আজ মধ্যে, যেখানে আমরা এইচটিএমএল সম্পর্কে অল্প কথা বলুন. এইচটিএমএল, সব হাইপারটেক্সট হয় মার্কআপ ভাষা. এটা শুধু প্রমিত ভাষা কী আপনি সমস্ত ওয়েব তৈরি করতে ব্যবহার ইন্টারনেটে পেজ. তাই যে কোনো ওয়েব পৃষ্ঠা, কি আপনার প্রিয় ওয়েব পাতা? আপনার প্রিয় ওয়েব পাতা কি? শ্রোতা: [শ্রবণাতীত]. Andi Peng: দুঃখিত? শ্রোতা: টাম্বলার. Andi Peng: টাম্বলার. সুতরাং টাম্বলার HTML এ লেখা হয়. তাই আসলে আমরা দিয়ে যাবেন এবং এইসব জিনিস কিছু সঙ্গে চারপাশে খেলা পরে. প্রায় কাছাকাছি সবকিছু আপনি জানা, শেখা প্রয়োজন, এইচটিএমএল লিখুন আপনি সম্ভবত পারেন ইন্টারনেটে শুধু গুগল. এইচটিএমএল, এটা সি মত একটি প্রোগ্রাম যা না আপনি ভেরিয়েবল তৈরি ও করতে পারেন যেখানে এটি দিয়ে শান্ত জিনিষ. এটা ওহ, এটা কোথা থেকে, শুধু আরো আমি কিছু আমার ওয়েবসাইটে প্রদর্শিত করতে চান. আর আমি শুধু তা করা যাচ্ছে না. আর তাই এটি যাচ্ছে. এইচটিএমএল সুতরাং, এক অর্থে, এটা ঠিক মত একটি বিন্যাস অথবা টেমপ্লেট ভাষা. এটা অনেক সহজ. এটা জানার জন্য অনেক সহজ সহজ অনেক লিখতে আপনার সাধারণত প্রোগ্রামিং চেয়ে খুব সহজ ভাষায়, খুব ব্যবহারকারী অ্যাক্সেসযোগ্য এবং বন্ধুত্বপূর্ণ. সুতরাং আমরা আসলে খেলতে যাচ্ছেন চারপাশে, আজ আমাদের নিজস্ব পেজ লিখুন. আমরা শুরু করার আগে কিন্তু, আমি শুধু চাই কিছু সংক্ষিপ্ত সর্বোত্তম কার্যাভ্যাস ঝালিয়ে. এইচটিএমএল যেমন একটি সহজ কারণ ভাষা এবং এমনকি কারণ আপনি একটি দম্পতি কিছু ভুল না হলে, মাঝে মাঝে লক্ষ্য করা হতে পারে আমরা করছি যে নিশ্চিত করতে চাই আসলে আমাদের সর্বোত্তম কার্যাভ্যাস লগ্ন নিশ্চিত করুন যে আপনি কিছু যে কাছাকাছি যাওয়া হতে পারে কিন্তু সবসময় সঠিক যেতে না করা যাচ্ছে না তারা কমিয়ে আনা করছি তা নিশ্চিত করুন. তাই প্রায় কাছাকাছি, নিশ্চিত করুন আপনার বন্ধের সমস্ত ট্যাগ যখন আপনি HTML এ লেখা করছি. আপনি খোলার করছি একটি শরীর, নিশ্চিত করুন যে আপনি আছেন না কোথাও একটি শরীরের সঙ্গে তা বন্ধ. আপনি নিশ্চিত করুন যে আপনি চান আপনার ওয়েব পৃষ্ঠা ব্যবহার করে অনুমোদিত হবে কি W3 যাচাইকারী বলা হচ্ছে. আপনি, যে অনলাইন শুধু গুগল করতে পারেন এবং এটি একটি লিঙ্ক আছে. এবং তারপর আপনি চান পৃথক HTML, যা আপনার মার্কআপ ভাষা, আপনার শৈলী থেকে হয় সিএসএস ভাষা যা যে ডেভিড আমরা করছি যে প্রদর্শিত বক্তৃতা দিয়ে একটু খেলতে যাচ্ছে. কুল. তাই যে কোন সময় আপনি চালাতে চান CS50 অ্যাপ্লায়েন্স এইচটিএমএল, আমরা একটি রান চলুন প্রোগ্রাম, Apache বলা যা সব শুধু একটি সালে নির্মিত হয় ওয়েব সার্ভার যে CS50 মধ্যে সবাই অ্যাক্সেস আছে. আমরা এটা শুধুমাত্র এই কারণে আমরা apache50 কল CS50 মধ্যে সবকিছু 50 ডাকতে ভালবাসি. সুতরাং আপনি CS50 ওয়েব শুরু যে ভাবে সার্ভার আপনার কমান্ড টাইপ করে হয় লাইন বিন্দু শুরু apache50. আর আপনি যে কোনো সময়ে এটি শেষ করতে চান তাহলে সময়, আপনি apache50 কোন বিন্দু শেষ না. আর আপনি ঠিক করে এন্টার. এবং এটি শীঘ্রই এখানে আপ শিরোনাম দিতে হবে. হাঁ. তাই আমি শুধু দ্রুত ঝালিয়ে যাচ্ছি সত্যিই একটি সংক্ষিপ্ত ওয়েব পৃষ্ঠার একটি উদাহরণ. আর আমরা কাটাতে চলুন 10 ভালো, 15 মিনিট খেলে কাছাকাছি আমাদের নিজস্ব ওয়েব পেজ লেখা. ঠিক আছে. সুতরাং এখানে IDE-- মধ্যে সবাই দেখতে পারেন? আসলে তা না. এখানে, আমি জুম করব. আমি শুধু এই সংক্ষিপ্ত টেম্পলেট পেয়েছেন এখানে এটা আসলে কিছুই সঙ্গে. আমরা শুধু দ্রুত লিখতে যাচ্ছেন একটি HTML প্রোগ্রাম যা আমরা শুধু বিশ্বের হ্যালো বলে. সি হিসাবে, এখন আমরা করছি তাই একই জিনিস HTML এ ঠিক একই কাজ করে যাচ্ছে. কেউ আসলে শুধু চাই না আমার প্রথম জিনিস আপনি দেবার চেষ্টা একটি HTML নথিতে রেখে করতে হবে? হ্যা. শ্রোতা: বন্ধনী, [শ্রবণাতীত]. Andi Peng: হাঁ. খুব অনন্য যে এত কিছু এইচটিএমএল যে আমরা সাধারণত ঐতিহ্যগতভাবে অন্যান্য কমান্ডে সম্মুখীন না লাইন স্তরের প্রোগ্রামিং ভাষা আমরা যে আসলে হয় ফাইলের ধরণ উল্লেখ এই হতে যাচ্ছে আমাদের কোড উপরের. সুতরাং এই instance-- মধ্যে আমি মনে করি যে ঠিক আছে, ঠিক কমান্ডের? হাঁ. শীর্ষে, আপনি শুধু অন্তর্ভুক্ত করতে চান ব্র্যাকেটের মধ্যে ঠুং doctype html শুধু আপনার কম্পিউটার বলতে, আরে, চক্ষু মেলিয়া. এবং HTML নথি আসছে. এবং তারপর কিভাবে আমরা চাই না আমাদের ফাইল চলতে শুরু করতে? আমরা শুধু হ্যালো বলতে চাই যদি একটি আছে বিশ্বের হ্যালো বলছেন যে ওয়েব পৃষ্ঠা, কিভাবে আমরা এই বিল্ডিং সম্পর্কে যান? বাস্তবিক, আমি কি গুগল চালু করা যাক. আমরা আসলে এই কাজ করতে পারেন. হাঁ. আমরা শুরু করছি. এইচটিএমএল সুতরাং. যেহেতু আপনি দেখতে পারেন, আমার ব্রাউজার আসলে স্বয়ংক্রিয়ভাবে আমার জন্য এই স্টাইলিং. সি, যখন আপনি এ হিসাবে একই জিনিস একটি খোলা কোঁকড়া বক্রবন্ধনী তৈরি, আপনার ব্রাউজার স্বয়ংক্রিয়ভাবে একটি বন্ধ কোঁকড়া বক্রবন্ধনী মধ্যে যোগ করা হয়েছে. সৌভাগ্য যে, আমাদের আইডিই ভালবাসে পাশাপাশি আমাদের জন্য এই কাজ. তাই এখন আমরা ধরনের টাইপ করতে পারেন একটি ট্যাগ শুরুতে, এবং এটা সবসময় আমাদের জানাতে যাচ্ছে ট্যাগ শেষে টাইপ মনে রাখবেন. আমি এই মূলধনী করা দরকার মনে করি. এবং তারপর আমরা যোগ করতে চাই, সবসময়, একটি মাথা যা শিরোনাম. আমরা শুধু হয়তো কল করতে চান এই হ্যালো, এবং তারপর শরীর. এবং সেখানে আপনি যান. এটা আসলে আমাদের এইচটিএমএল ডকুমেন্ট. তাই উপায় যে কোন এইচটিএমএল ডকুমেন্ট সবসময় একই জিনিস in-- স্টাইল করা হয় int প্রধান অকার্যকর সঙ্গে. আপনি সবসময় চাই একটি খোলা এবং বন্ধ ট্যাগ এইচটিএমএল আপনার কোড উপরে এবং নীচে. আপনি ভেতরে একটি মাথা আছে চান যা শুধু যাই হোক না কেন, শিরোনাম রয়েছে আপনার ওয়েব এর ট্যাব প্রদর্শন যাচ্ছে পাতা, এবং যার ভিতর একটি শরীরের আসলে সামগ্রী প্রদর্শন করবে যাই হোক না কেন আপনাকে কাজ করতে চান. সুতরাং আপনি আসলে চালাতে চেয়েছিলেন এই, আমি ফিরে জুম আউট করা যাচ্ছে না. আপনি আসলে শুরু করতে পারেন ডট শুরু apache50. কুল. আর তুমি এখন দেখতে পারেন, তাই এই লিঙ্কটি popped আপ হয়েছে. এটা আপনার সাইটের এখন বলছেন নীচে কিছু লিঙ্ক এ উপলব্ধ. তাই আমাদের সবগুলো আইডিই done-- হয়েছে না আইডিই, হ্যা sorry--, কাজ করেনি আমাদের আইডিই একটি ওয়েব তৈরি হয় লিঙ্ক আমাদের ওয়েব পেজের যা সকলের প্রতি সার্ভারে প্রবেশ করা যেতে পারে. সুতরাং আসুন এখানে কটাক্ষপাত করা যাক. এর, এই ক্লিক hello.html যাই. এবং যদি আপনি একটি খুব সহজ দেখতে হ্যালো দুনিয়া জন্য ওয়েব পৃষ্ঠা. ঠিক আছে. আমরা আসলে চলুন শুধু হ্যা প্রত্যেকের, আপ কি আছে? শ্রোতা: আমি একটি মৌলিক প্রশ্ন আছে. Andi Peng: হ্যাঁ. শ্রোতা: কিভাবে আপনি সেভ করবেন একটি HTML হিসাবে আপনার ফাইল? Andi Peng: হ্যা. আমি একটি নতুন ফাইল তৈরি করতে হলে তাই, আমি নতুন ফাইল না থাকে, Untittle, আমি কি তাহলে, section.html, বুম, যে আমি যা করতে হবে সব. শ্রোতা: [শ্রবণাতীত]? Andi Peng: নং শ্রোতা: [শ্রবণাতীত]. Andi Peng: নং শ্রোতা: [শ্রবণাতীত]. Andi Peng: হ্যা. প্রায় কাছাকাছি, এক্সটেনশন আপনার আইডিই ভিতরে যে ফাইল, যে, যে কম্পিউটার বলে ব্রাউজার, আরে, চক্ষু মেলিয়া বলে. এই কোড হতে যাচ্ছে এই ভাষায় লেখা. উদাহরণস্বরূপ, মাইক্রোসফট তাই ওয়ার্ড, সব ওয়ার্ড ডকুমেন্ট কি , কি এক্সটেনশন দিয়ে শেষ? .doc বা .docx, ডান? যে সব করতে সুনির্দিষ্ট হয় আপনার অপারেটিং সিস্টেম, হেই, আপনি উত্ক্রান্ত একটি ওয়ার্ড ফাইলটি পেয়েছেন. শব্দ সঙ্গে এটি খুলুন. প্রতিটি PDF ফাইলের শেষে সঙ্গে একই জিনিস. এটা ওহ, আমি প্রয়োজন, জানে এই ফাইল খুলুন অ্যাডোবি রিডার বা অ্যাডোবি অ্যাক্রোব্যাট সঙ্গে. আর তাই এক্সটেনশন কাজ আপনার কম্পিউটার এ হিসাবে একই ভাবে. আপনি আপনার কোড পৃষ্ঠা উল্লেখ করা হলে তারপর, এটা জানে না, এইচটিএমএল নাম প্রকাশে অনিচ্ছুক ওহ, আপনি এইচটিএমএল কোড পেয়েছেন. আমি এইচটিএমএল কোড হিসেবে বিবেচনা করা যাচ্ছে না. সুতরাং এটা যে অর্থে সুপার স্মার্ট. তাই সবাই, এর 10 মিনিটের মত নিতে দিন এবং শুধু আমাদের নিজস্ব ওয়েবসাইট তৈরি করুন. এর সুদৃশ্য জিনিস যোগ করা যাক. যাহা চান বলে নির্দ্বিধায়. আমি শুধু নিশ্চিত করুন যে আপনি চান সকলের সার্ভার সঠিকভাবে দৌড়াচ্ছে আমরা pset মধ্যে আপনি মুক্ত আগে. কারণ আপনার সার্ভার যদি pset জন্য চালানো হবে না, যে সত্যিই, খুব খারাপ হবে. আমি শুধু কাছাকাছি ভাসা যাচ্ছি এবং প্রত্যেকের কাজ করা হয়েছে তা দেখতে. কেমন চলছে? শ্রোতা: আমি শুধু আমার কম্পিউটার চালু. Andi Peng: এটা ঠিক আছে. শ্রোতা: [শ্রবণাতীত]. Andi Peng: শুধু আপনার আইডিই. হ্যা. শ্রোতা: [শ্রবণাতীত]. Andi Peng: এটা ঠিক আছে. শ্রোতা: [শ্রবণাতীত]. Andi Peng: সম্পূর্ণই সূক্ষ্ম. সবাই অ্যাক্সেস করা হয় তাদের ওয়েব সার্ভার ঠিক? Apache50 ঠিক চলছে? আমি কিছু মনে অন্যান্য বিভাগে, আমরা মানুষ না দিয়ে সমস্যা ছিল সার্ভার অ্যাক্সেস করতে সক্ষম হচ্ছে. হ্যা. তাই আপনি শুধু apache50 চালানো স্থান কাল শুরু. শ্রোতা: [শ্রবণাতীত]. Andi Peng: হ্যাঁ. ভাল? শ্রোতা: [শ্রবণাতীত]. Andi Peng: ঠিক আছে, ওহ. তাই আপনি যদি একটি স্থান আছে অনুমিত করছি. সুতরাং apache50-- শ্রোতা: আমি করেনি. Andi Peng: --start স্থান. শ্রোতা: ওহ, স্পেস ডট. Andi Peng: হ্যাঁ, স্পেস ডট. এই নাও. আমি তখন আপনি যদি নির্মিত একটি HTML পৃষ্ঠা, তারপর আপনি শুধু সরাসরি যেতে পারেন এটা নির্দিষ্ট করে পাতাগুলি থেকে. এবং আপনি এটি অ্যাক্সেস করতে সক্ষম হওয়া উচিত. সবাই করতে সক্ষম হয়েছে তাদের ওয়েব পেজ ঠিক অ্যাক্সেস? শ্রোতা: [শ্রবণাতীত]. Andi Peng: ওহ, এটা ঠিক আছে. শ্রোতা: [শ্রবণাতীত]. Andi Peng: হ্যা. আমি আসলে আপনি খুলতে পারে মনে আপনার ব্রাউজার, ব্রাউজার মধ্যে এটা এবং শুধুমাত্র আপনার আইডিই ব্রাউজার. হ্যাঁ, আমি তোমাকে কপি যদি মনে হয় এবং এটি পেস্ট করুন. শ্রোতা: এবং তারপর কিভাবে আমরা এটা বন্ধ করবো? [শ্রবণাতীত] Andi Peng: হ্যা, আপনি কি apache50 কোন সময়ের সঙ্গে বন্ধ. হাঁ. শ্রোতা: [শ্রবণাতীত]. Andi Peng: কোন সময়ের সঙ্গে. হ্যা. আমরা শুরু করছি. হাঁ. আমরা আমাদের নিজস্ব ওয়েব পেজ তৈরি করছি. শ্রোতা: ওহ, শীতল. Andi Peng: হ্যা. শ্রোতা: আমার একটা প্রশ্ন আছে. সুতরাং Apache 50-- Andi Peng: 50, হাঁ. শ্রোতা: [শ্রবণাতীত]. Andi Peng: কি? ঐটা অস্বস্তিকর. , দেখুন যে ইস্যু ধরনের ছিল যে পূর্বে কি হয়েছে. ঠিক আছে. অধ্যায় পরে আমাকে কস্মিনকালেও দেখতে পাবে. আমরা কিছু ভুগেন কারণ সার্ভারের সাথে সমস্যা. এবং আপনি করতে চান আপনার সার্ভার নিশ্চিত যে pset শুরু করার আগে চলমান. যদি আপনি এটি প্রয়োজন চলুন, কারণ. হ্যা. হয়েছে না যে অন্য কেউ নেই সক্ষম তাদের সার্ভার আরম্ভ করার জন্য পেতে? যোগ করতে চান যারা আপনি তাদের জন্য আপনার ওয়েব পেজ অতিরিক্ত শৈলী, আমরা আসলে কি করতে পারেন ডেভিড, সেইসাথে বক্তৃতায় করেনি যা একটি অতিরিক্ত শৈলী তৈরি হয় নামের প্রারম্ভে বিন্দু সিএসএস যা শীট, Cascading স্টাইল শিট এবং আসলে শুধু এটি যোগ করুন. সুতরাং উদাহরণস্বরূপ, আমি ঠিক তৈরি করেছি প্রায় কাছাকাছি প্রায় একই সঠিক এক ডেভিড বক্তৃতায় করেনি. আপনি অনেক সুন্দর শুধু শরীর কি করতে পারে. আপনি ট্যাগ বলা হয় কি আছে যা আপনি যাই হোক না কেন অধ্যায় IDE আবেদন করতে পারেন আপনি মধ্যে চান আপনার এইচটিএমএল পাতা প্রকৃত. সুতরাং পৃষ্ঠার শরীর, আপনি টেক্সট সারিবদ্ধ কেন্দ্র করতে পারেন. এবং তারপর আমি সৃজনশীল হবে ভিতরে একটি ট্যাগ বলা শীর্ষ যা আমি এই জিনিষ চান একটি বৃহত্তর পিক্সেল সাইজ ধার্য ঘটতে ফন্টের জন্য. আমি ফন্ট ওজন গাঢ় হতে চান. আর আমি রঙ চান শুধু নির্বিচারে, নীল হতে আমি নির্বাচন করার সিদ্ধান্ত নিয়েছে যে মান. আমি মাঝখানে নামক আরেকটি ট্যাগ তৈরি করতে পারেন. ফন্ট সাইজ, এটা একটু ছোট করতে. এবং তারপর আমি অন্য ট্যাগের তৈরি করতে পারেন আমি ফন্টের আকার চান যেখানে বলা নীচে এখনও এমনকি ছোট হতে. আর তাই অনেক সুন্দর এই মাত্র উদাহরণ সোর্স কোড বা উৎস স্টাইল শীটের এটা শুধু গুগল খুব সহজ যে. আপনি যদি বলি, ওহ, আমি আমার ফন্ট চান italicized ও গাঢ় সবুজ করা, আপনি, গুগল সম্ভবত পারেন এবং তারপর এটা আপনাকে বলতে হবে যথাযথ ট্যাগ বা আইডির তৈরি করতে. তাই উপায় যে আপনি আসলে ধরনের HTML নথিতে এই আছে বা আপনার আছে সব ব্যবহার এখানে কাজ করতে মাথার কাছ স্টাইল শীট একটি লিঙ্ক যুক্ত. তাই আপনি শুধু আল্লাহ সমান লিঙ্ক করতে পারেন আপনার স্টাইল শীট এর যাই হোক না কেন নাম হয়. এবং তারপর সম্পর্ক একটি স্টাইল শীট হয়. সুতরাং কোনো HTML নথির মধ্যে, যতদিন আপনি এই বিন্দু সিএসএস শীট অন্তর্ভুক্ত হিসাবে, আপনি অ্যাক্সেস করতে সক্ষম হওয়া উচিত এবং সেখানে বৈশিষ্ট্য আছে. সুতরাং উদাহরণস্বরূপ, এখানে আমি শুধু করেছি আরেকটি উদাহরণ ওয়েব পাতা তৈরি. এটি CS50 অধ্যায় স্বাগত 2:00 থেকে আমার সাথে 3:30 করতে মঙ্গলবার. এবং তারপর আমি একটি সুদৃশ্য চিত্র জুড়েছেন আমরা সম্ভাব্য দেখতে সক্ষম হওয়া উচিত. সুতরাং আপনি এখানে কটাক্ষপাত করা হলে, আপনি style.html যেতে হলে, আমরা kittens সঙ্গে একটি ওয়েব পাতা তৈরি. বিড়ালছানা কারণ সন্ত্রস্ত হয়. সুতরাং একটি ইমেজ শুধু কি SRC লিঙ্কটি img হয় যোগ. আছে, প্রায় কাছাকাছি বৈশিষ্ট্য কোন ধরণের আপনি যোগ করতে চান আপনার website-- তাই, এর কথা বলা যাক আপনি একটি মেনু যোগ করতে চান অথবা একটি সার্চ বার বা মত একটি ছবিটি শুধু গুগল কিভাবে যে কি. এবং আপনি ঠিক যে ফরম্যাটে অকস্মাৎ. আর আপনি যা করতে পারেন শুধু সুন্দর অনেক শুধু এটি যোগ করুন. এটা সত্যিই, সত্যিই সহজ. আমরা আমাদের নিজের তৈরি করা হয় ওয়েব পেজ এই মুহূর্তে. যদি তুমি চাও-- শ্রোতা: [শ্রবণাতীত] Andi Peng: দুঃখিত? শ্রোতা: [শ্রবণাতীত]. Andi Peng: ওহ, div শুধু একটি বিভাগ ওহ, আমি আছে, যে আমাকে বলছে নামক একটি নির্দিষ্ট বিভাগে মাঝখানে যা আমি আবেদন করছি আমার সিএসএস ট্যাগ, এবং তারপর নিচ দিয়ে আমার অন্যান্য বিভাগ. তোমরা তা বলছে সব. এটা রাখা চমৎকার কারণ যাতে ঝরঝরে জিনিষ, তাই প্রোগ্রাম চালানো ঠিক কিভাবে জানেন. আর আমি এই কপি পেস্ট করতে পারেন মনে হয় পাশাপাশি আমার প্রকৃত ব্রাউজারে. এটা জরিমানা হওয়া উচিত. হ্যা. হ্যাঁ. সবাই চায়, তাই যদি শুধু একটি ওয়েব পৃষ্ঠা তৈরি করার চেষ্টা, আমরা অন্য দুই থেকে তিন মিনিট সময় নিতে হবে. আমি শুধু নিশ্চিত করতে চাই সকলের সার্ভার দৌড়াচ্ছে এবং প্রত্যেকের একটি আছে কিভাবে যে কি এর ধারণা. আপনাকে বলছি চান আপনার কম্পিউটারের খুঁজে নিতে. এখনও কাজ করছে না? শ্রোতা: আমি শুধু [শ্রবণাতীত] আছি. Andi Peng: হয়তো পাশাপাশি 50 আপডেট করুন. হ্যা. শ্রোতা: [শ্রবণাতীত]. Andi Peng: হ্যা. তাই আপনি যদি একটি নতুন উপায় শুরু আইডিই তে ওয়েব সার্ভার ঠিক হয় apache50 স্থান শুরু স্পেস ডট না. আমি ঠিক নিশ্চিত করতে চেয়েছিলেন সকলের সার্ভার ঠিক দৌড়াচ্ছে. এখানে, টার্মিনালে: শ্রোতা? Andi Peng: হ্যা. শ্রোতা: [শ্রবণাতীত]. Andi Peng: এ্যাপাচি. বাস্তবিক, আমি আপনি আছেন মনে ইতিমধ্যে কিছু চলমান. হ্যা, আপনি আসলে করছি একটি ভিন্ন সার্ভার চলমান. হ্যা, আপনি ভাল আছেন. যতদিন যে কাজ হিসাবে, আপনি ঠিক আছেন. শ্রোতা: ঠিক আছে. Andi Peng: দুই নেই উপায় সার্ভার চালানোর জন্য. সুতরাং যতদিন উপায়ে এক হিসাবে কাজ করছে, এটা ঠিক আছে. আমরা অন্য মিনিট নেব শুধু ধরনের আপ শেষ করার যাই হোক না কেন এর শেষ ছোঁয়া ওয়েবপৃষ্ঠাটি আপনাকে বলছি না করতে চেয়েছিলেন. সবাই ভাবে করে কাজ করছে? প্রত্যেকেরই এর সার্ভার হয় পুলিশের জন্য এছাড়া চলমান? আমরা যে চিন্তা করব. এবং HTML এর মোটামুটি সহজ. তাই আমি মনে করি আমরা সব ভাল মনে. হ্যা. আমি ফিরে আসব. শ্রোতা: [শ্রবণাতীত]. Andi Peng: ঠিক আছে. শ্রোতা: সুতরাং এটা ঠিক আপ লোড করতে শুরু করে. Andi Peng: কোন উদ্বেগ. এইচটিএমএল সুতরাং, সোর্স কোড আছে যে অধ্যায় পরে অনলাইন হতে হবে. এছাড়াও, ডেভিড পুরো করেনি গুচ্ছ অনলাইন পাশাপাশি. এটা ধরে শুধু ধরনের নজরে এইচটিএমএল পেজ লেখা হয় কিভাবে দেখতে. এটা মোটামুটি সহজ. কিছু যদি আপনি সুন্দর, জানি না অনেক শুধু গুগল এবং আপনি ভাল আছেন. আমি শুধু নিশ্চিত করুন যে আপনি চান আপনার সার্ভার দৌড়াচ্ছে. শ্রোতা: এটা প্রায়ই এই কাজ করে? Andi Peng: এটা আমার কখনও ঘটেনি. আমি এটা এমনকি হাইবারনেট পারে জানেন না. শ্রোতা: [শ্রবণাতীত]. Andi Peng: আমি মনে করি প্রত্যেকের খনি আগে hibernated কখনও করেনি. এবং আমি কেন জানি না. এটা অদ্ভুত. শ্রোতা: [শ্রবণাতীত]. Andi Peng: পুলিশের hibernating হয়? শ্রোতা: [শ্রবণাতীত]. Andi Peng: হ্যা. শ্রোতা: এটা ঠিক আছে. তাই একবার খোলা. Andi Peng: ঠিক আছে. আমরা কিছু সার্ভার মোকাবেলা করব অধ্যায় পরে সমস্যা. আপনাকে জরিমানা করা উচিত. , যদি আপনি নিশ্চিত করতে চাই যদিও আগে আপনি চলে তাদের সমস্যাগুলি সমাধান পেতে. কারণ তাহলে আপনার সার্ভারের চলমান না হয়, তাহলে আপনি আছেন কাজ করতে সক্ষম হতে যাচ্ছে না pset, pset কোন অংশ ভালো. সুতরাং আপনি নিশ্চিত করতে চাই যে যে কাজ করছে. কুল. ঠিক আছে. বিদায় বিড়ালছানা বলুন. আমি খুঁজছি একটি দীর্ঘ সময় অতিবাহিত যে বিড়ালছানা ছবি লাগাতে. সুতরাং, কোন পথে. শ্রোতা: [শ্রবণাতীত]. Andi Peng: দুঃখিত? শ্রোতা: [শ্রবণাতীত]. Andi Peng: আমি এটা ওয়েবসাইটে মনে করি. বৈশিষ্ট লেগেছে? শ্রোতা: [শ্রবণাতীত]. আমি বৈশিষ্ট শুধু মনে হয় সপ্তাহে সাত অনলাইন. আমি এমনকি, এটা pset6 বলা হচ্ছে মনে আমরা সপ্তাহে সাত করছি যদিও যা একটি বিট কম্পিউটিং হয়. শ্রোতা: কিন্তু আমি বলতে চাচ্ছি আপনি যদি আপনি যদি at-- দেখতে চাই আমাদের সংস্করণ টান আপ করতে চান আমাদের বিভক্ত করা থেকে ওয়েব সাইটের? তাই মত server.c pset, ডান? আপনি যদি এই তাকান করতে চান তাহলে, মত এটি চেক আউট কিভাবে? Andi Peng: ওহ, আসলে তাই pset, সব আমরা করছেন এখানে, এখানে implementing-- হয় আমি এই সম্পর্কে সংক্ষেপে উপর যাবেন. শুধু অর্জিত যে সবার জন্য তাই অধ্যায়, আপনাকে বলছি ভাগ্য হয়. খুব সামান্য উপাদান নেই আসলে আজ আবরণ. আমি শুধু পরের কাটাতে যাচ্ছি Pset সাহায্যের উপর যাচ্ছে 20 মিনিট. কিছু দরকারী আছে, কারণ আপনার জীবনের সাহায্য করবে ফাংশন. আর আশা করছি, আমরা আউট হবেন এখানে 20 মিনিটের মত. ঠিক আছে. সুতরাং pset7 ভুল. আমরা সপ্তাহে করছি যদিও সাত, এটা আসলে pset6 এর. আমি যে পরিবর্তন করব. সমস্ত আমরা pset6 করছেন একটি ওয়েব সার্ভার তৈরি করা হয়. যে সুপার ভীতিকর শোনায়. আর বিশেষ করে যারা আপনি ইতিমধ্যে আছে যারা , বন্টন কোড দিকে তাকিয়ে কোড অনেক, কোড একটি অনেক আছে. কিন্তু একেবারে ঠিক আছে. উকুনসম্পন্ন বালুকাময় কারণ আসলে তৈরি অংশ সার্ভার আমাদের দ্বারা সম্পন্ন করা হয়. সমস্ত আপনি কি সত্যিই জিজ্ঞাসা করছি এই pset করতে শুধু কিছু স্ট্রিং ম্যানিপুলেশন না হয় ফাইলের মধ্যে, I / O. এটা আসলে মোটামুটি সহজ ভালো. তাই আপনি যদি প্রথম কিন্তু যে ডাউনলোড করার সময় যারা এখানে আসলে ইতিমধ্যে ডাউনলোড করা হয়েছে pset এবং একটি চেহারা নিয়েছে? ঠিক আছে. হ্যা. কোড 500 লাইন মত নেই আপনার মত হতে যাচ্ছেন যে, কি হচ্ছে? যে সম্পূর্ণই সূক্ষ্ম. আপনি হাঁটতে- throughs পাহারা নিশ্চিত করুন. ডেভিড and--, কারণ আমি জানি না. আমি এটা, Zamyla এর, এই এক মনে করি না. কিন্তু আমি অন্য কিছু মনে হয় হাঁটতে- throughs মোটামুটি হয় শর্তাবলী সহায়ক শুধু লেট আপনি কি জানেন কি আপনার কোড এর ভিতরে কি ঘটছে. এবং এটা সম্পূর্ণ ঠিক আছে. কারণ আপনি যে চার ফাংশন বাস্তবায়ন করতে বলা আসলে আছে শূন্য প্রকৃত সার্ভারের সাথে কাজ করতে. তারা যা করতে হবে তা ঠিক হয় বিভিন্ন স্ট্রিং পার্সিং, স্ট্রিং মাধ্যমে অনুসন্ধান, নিশ্চিত কিছু করছেন না করতে কি তারা অনুমিত করছি কাজ করা. যে প্রভাব সুতরাং, আছে কিছু খুব, খুব দরকারী ফাংশন, বিশেষ পংক্তি জন্য ম্যানিপুলেশন, যে আমরা সব করা উচিত আমি ভেবেছিলাম যে পুনরালোচনা আপনাকে বলছি জন্য খুব উপযোগী হতে pset করার পূর্বে শিখতে. এবং তারা সব অন্তর্ভুক্ত করছি আপনার string.h গ্রন্থাগারের মধ্যে. সম্ভবত আরো দরকারী নেই আমি এখানে অন্তর্ভুক্ত করা হয়েছে ফাংশন, আমি হয় তাদের ব্যবহার না, কারণ বা সম্ভবত আমি শুধু তারা অস্তিত্ব জানেন না. Student.h মাধ্যমে নজরে নির্দ্বিধায়. একটি অনেক আছে যাচ্ছে, কারণ ফাংশন খুব দরকারী হয়. তাই ছয় আমি সবচেয়ে ব্যবহার যে আমার আমি এই গত সপ্তাহে এরকম ছিল যখন pset strtok, strchr, strrcher, ছিল strstr, strcasecmp, এবং Strcpy. আর তাই গত দুই বলে মনে হতে পারে আপনি অধিকাংশ বেশ পরিচিত. Str ক্ষেত্রে এটি সব তুলনা হয়, তুলনা স্ট্রিং সমতার জন্য তাদের বার, কেস সহ. আর Strcpy শুধু কপি একটি বাফার মধ্যে এক পংক্তি. আর তাই ঐ দুটি খুব মনে উচিত এই সময়ে আপনাকে বলছি পরিচিত. আমরা তাদের অনেক ব্যবহার করেছি কারণ, বিশেষ করে গত psets জন্য. সম্ভবত কিন্তু প্রথম চার আপনি এখন পর্যন্ত দেখা যায় না. কিন্তু আমি শুধু তাদের ভিতর দিয়ে হেটে যাচ্ছি. তারা আপনার জীবন করতে যাচ্ছেন, কারণ সত্যিই, সহজ for-- না সত্যিই সহজ, এই আসন্ন pset জন্য কিন্তু অনেক সহজ. ঠিক আছে. * Strtok তাই গৃহস্থালি, এই ফাংশন এই ফাংশন জন্য সংজ্ঞা অন্তর্ভুক্ত স্ট্রিং, এইচ গ্রন্থাগারের মধ্যে. আপনি গৃহস্থালি একটি ইনপুট * দেওয়া হয় শুধু একটি স্ট্রিং যা স্ট্রিং, অথবা একটি ধ্রুবক গৃহস্থালি * deliminator, সংক্ষেপে delim, সব বড় ভঙ্গ হয় করছে আমরা কি কল একটি সিরিজ মধ্যে স্ট্রিং একটি নির্দিষ্ট মান দ্বারা পৃথকীকৃত টোকেন. তাই এক অর্থে, আমি হলে দিতে আপনি এই একটি পংক্তি, section.7.php. আমি পাস হলে সুতরাং যে হবে এই হিসাবে আমার Str মধ্যে, আমার গৃহস্থালি * str, আমার deliminator ডট ছিল, এই সব করতে হবে স্ট্রিং মাধ্যমে অনুসন্ধান. আর প্রথমবারের মতো এটি একটি বিন্দু উদ্ধার, এটা শুধু পয়েন্টার ফিরে আসতে হবে পাওয়া সর্বশেষ টোকেন এই আগে স্ট্রিং মধ্যে. সুতরাং এটা ঠিক এখানে যেতে হবে. এবং এটা শুধু আমার 7.php দিতে হবে. এবং আমি কল করতে হলে আরো এক সময় কাজ, এটা আমার শুধু .php দিতে হবে. আর তাই এই সব ফাংশন করছে বৃহত্তর স্ট্রিং নিচে ভঙ্গ হয় নির্ভর ছোট স্ট্রিং মধ্যে আপনি যা খুঁজছেন তা উপর. তাই উদাহরণস্বরূপ, মধ্যে আপনার চেহারা আপ ফাংশন আপনি তাকান করতে চান তাহলে তা নির্দিষ্ট অক্ষর সম্পর্কে আসা বা বিন্দু ঘটতে বা এক্সটেনশানগুলি ঘটতে থাকে, এই ফাংশন মোটামুটি উপযোগী হতে হবে. হ্যা. কোন চিন্তা করো না. এই সব be-- হাঁ, আপ কি হবে? শ্রোতা: প্রথম লাইন তাই আমরা এই উদাহরণে ব্যবহার করা হয়েছে, আমরা যে শুধুমাত্র কি সন্নিবেশ হবে? Andi Peng: হ্যা. আপনি শুধু একটি কল করবে strtok স্ট্রিং কমা delim. আর স্ট্রিং section.7.php সমান. এবং তারপর আপনি delim আছেন শুধু বিন্দু সমান হতে পারে. শ্রোতা: ঠিক আছে. Andi Peng: হ্যা. এটার মতই. এই সবগুলো কাজ মোটামুটি হয় আমরা তাদের মাধ্যমে একই যেতে হলে. তারা শুধু সামান্য ভিন্ন কিছু না. কিন্তু তারা সব করতে যাচ্ছেন আপনার জীবন অনেক সহজ করতে. দ্বিতীয় ফাংশন, এই এক এর মত সুপার গুরুত্বপূর্ণ সুপার সুপার, আপ রাখা the-- হয়. ওহো. প্রথম Strchr অনুসন্ধান occurrence-- আসলে, হ্যা. Strchr ফাংশন যে আমি স্পষ্টভাবে ঠিক গিয়েছিলাম. আমি বললাম কি উপেক্ষা প্রথম ফাংশন জন্য. এটা আসলে strchr বলা হচ্ছে. সুতরাং এখানে কি ঘটেছে যদি হয় আপনি একটি গৃহস্থালি গ অনুযায়ী পংক্তিরূপে উল্লিখিত দেওয়া হয়েছিল, এটা শুধু দেবে আপনি যে যাই হোক না কেন. হ্যা. সুতরাং Str, হিসাবে এটা মনে যা গৃহস্থালি হিসাবে একটি স্ট্রিং, এবং CHR হয়. তাই আপনাকে যা করতে চেষ্টা করছেন সব অনুসন্ধান জন্য একটি গৃহস্থালি একটি স্ট্রিং মধ্যে যেখানে. আর তাই এটি প্রথম জন্য অনুসন্ধান চরিত্র সংঘটন স্ট্রিং Str সি. শ্রোতা: [শ্রবণাতীত]. Andi Peng: হ্যাঁ. এবং তারপর এটা খুঁজে পাচ্ছেন না করে থাকেন, তাহলে এটা নাল ফিরে যাচ্ছে. সুতরাং যাচ্ছে যে কিছু খুব হতে pset করছেন আপনাকে বলছি জন্য দরকারী , যদি বলি, আপনি একটি খুঁজছেন সেটা একটি শব্দ জন্য একটি .docx মত এক্সটেনশন নথিটি বা পিডিএফ ফাইলটি জন্য একটি PDF, আপনি যে ধরনের পর্যবেক্ষণ এটি ব্যবহার করতে পারেন যাই হোক না কেন দাম পরে হয় প্রত্যেক সময় আপনি সঠিক, একটি বিন্দু দেখতে? আর তাই প্রায় কাছাকাছি, আপনি যদি ফাংশন মাধ্যমে যে চালানোর, এটি ফিরিয়ে নাল যদি, তারপর আপনি জানেন এটা যে এই যার মানে, ডট তা খুঁজে পান না স্পষ্টতই একটি বৈধ ফাইল এক্সটেনশন নয়. অথবা যদি ফিরে আসে কিছু পরে, আপনি জানেন এটা যাই হোক না কেন এর ফিরে যাচ্ছে আসলে এক্সটেনশন পরে. ছিল আপনাদের মধ্যে যারা তাই লুকআপ মাধ্যমে খুঁজছেন শুরু এবং এই ফাংশন এর, বিশ্লেষণ যাচ্ছে সুপার দরকারী হতে. সুতরাং আমরা আসলে চলুন এই ব্যবহার প্রকট. কেন আপনাকে বলছি লেখার চেষ্টা না একটি ফাংশন bool, বাক্য গৃহস্থালি * গুলি যে এর একটি হল যদি শুধু সত্য ফেরৎ বাক্য এবং অন্যথায় মিথ্যা. সুতরাং আপনি যাচ্ছেন, প্রজ্ঞান সম্ভবত strchr ব্যবহার করতে. অথবা আপনি শুধু অনুসন্ধান একটি নির্দিষ্ট অক্ষর জন্য স্ট্রিং. আর তাই একটি বাক্যে, কি একটি বাক্য আলাদা একটি অ-বাক্য থেকে, কি নির্দিষ্ট চরিত্র? শ্রোতা: একটি স্থান. Andi Peng: একটি স্থান, ডান? তাই কি আমরা সম্ভবত যাচ্ছে না এখানে এই ফাংশন মধ্যে কাজ করতে চান? শ্রোতা: [শ্রবণাতীত]. Andi Peng: আমরা strchr করতে চান চলুন স্পেস চেহারা জন্য স্ট্রিং. এটা তারপর কিছু ফেরৎ যদি কারণ আমরা এই একটি বাক্য হতে হবে জানি. যে আমরা অবশ্যই এর মানে হল যে এই স্ট্রিং মধ্যে একটি স্থান আছে. কোন স্থান নেই, তাহলে আমরা জানি যে, আরে, এটি একটি স্ট্রিং না অনুমান. এটা সম্ভবত শুধুমাত্র সত্যিই দীর্ঘ শব্দ. তাই আমি বলছি আপনি একটি দম্পতি দেব মিনিট এই ফাংশন লিখতে. হ্যা. শ্রোতা: আপনি পেতে পারি ব্যবহারকারী থেকে এই স্ট্রিং? Andi Peng: হ্যা. সুতরাং এই মাত্র একটি ফাংশন. তাই আপনার প্রধান ফাংশন ভিতরে কল্পনা আপনি ইতিমধ্যে এর এখানে যান দিন থাকতে. ঠিক আছে. তাই আমি এই প্রোগ্রাম যেখানে লেখা করেছি আমি আমার মূল ফাংশন যেখানে আছে আমি শুধু দুটি পংক্তি তৈরি করেছি. প্রথম এক, উচ্চ আমার নাম পরিষ্কারভাবে Andi--, একটি বাক্য. আমার দ্বিতীয় এক মাত্র হয় Andi পরিষ্কারভাবে বাক্য না. আর তাই আমি ঐ উভয় চলমান করছি এই ফাংশন মাধ্যমে স্ট্রিং. আমি আপনাকে বলছি ঠান্ডা বাক্য লিখতে চান. তখন আমি বললাম, যারা মান সংরক্ষণ করছি এবং তারপর শুধু তাদের আউট মুদ্রণ. তাই ব্যবহারকারী মনে করেন যে স্ট্রিং এর মধ্যে পাস করতে যাচ্ছে. এবং তারপর মূলত আপনাকে চলুন এটি একটি বাক্য বা না জিনিসটা যদি এবং সেই অনুযায়ী সত্য বা মিথ্যা ফিরে. আপনাকে বলছি একটি দিতে চান অঙ্গুষ্ঠ আপ বা মাথা, মাথা মাথা ঝাঁকানি, যে কেউ শুরু করতে প্রস্তুত এই, যে ভালো হতে চাই. হয়তো মত 30 দেখো? ঠিক আছে. আপনি চেষ্টা করে দেখতে পারেন, তাহলে চলুন দেখা যাক এই ফাংশন লেখা. আমি শুধু যাচ্ছি কোডিং তাই ছদ্ম ধরনের এখন এই অধিকার দিয়ে হেটে যেতে. প্রায় কাছাকাছি, আমরা জানি আমরা ব্যবহার করতে হবে যে ফাংশন. আমরা যে ফাংশন কল চলুন আমাদের স্ট্রিং এবং একটি স্থান জন্য অনুসন্ধান. এটা কিছু ফেরৎ, তাহলে আমরা অবশ্যই পরিষ্কারভাবে, এই একটি বাক্য হতে পারে. কারণ স্পেস আছে. তারপর আমরা সত্য ফিরে যাচ্ছেন. অন্যথায়, আমরা মিথ্যা ফিরে যাচ্ছেন. কেউ দিতে চান আমার প্রথম কোড লাইন আমরা আসলে চলুন এই লেখার ব্যবহার? এটা আসলে hardest যাও কোড লাইন হিসাবে ভাল. হ্যা. শ্রোতা: তাহলে strtok s-- Andi Peng: শুধু strchr. শ্রোতা: [ভয়েসেস interposing] স্থান নাল সমান নয়. Andi Peng: কুল. একদম ঠিক. সবাই যে প্রথম লাইন বুঝতে? আমরা, strstr কল চলুন অনুসন্ধান করে যে একটি ফাংশন যা স্ট্রিং গুলি স্থান গৃহস্থালির জন্য. তা খুঁজে বের করে, তা হলে তা যাচ্ছে যে যেখানে একটি পয়েন্টার আসতে. এটা এটি না করা হলে এটা নাল ফিরে যাচ্ছে. এটা ছাড়া অন্য কিছু ফেরৎ যদি তাই শূন্য, তাহলে আমরা তা একটি স্থান পাওয়া জানি. এটা কি অর্থপূর্ণ? কুল. ঠিক আছে. আমরা জানি, তাই যদি এটি পাওয়া গেছে এর একটি স্থান, আমরা কি করতে চান না? শ্রোতা: সত্য ফিরুন. Andi Peng: হ্যাঁ. সত্য ফিরুন. এবং তারপর, কেউ চান আমার জন্য ফাংশন আপ শেষ? হ্যা. অন্যথায়, শুধু যে মত. আর এই কম্পাইল করার চেষ্টা করুন. হাঁ. আপনাকে বলছি থেকে দেখতে পারেন, তাই আউটপুট, সি বুলিয়ান স্মরণ সবসময় বাইনারি প্রকাশ করা হয়. 1 সত্য. 0 মিথ্যা. আমরা এই রান করতে হলে স্ট্রিং এক, উপর ফাংশন যা , উচ্চ আমার নামের Andi-- হয় ফলে এটা স্পষ্ট যে, একটি sentence-- সত্য যা 1 থেকে প্রিন্ট আউট. শুধু যা দ্বিতীয়, একটি শব্দ, প্রিন্ট আউট ফলে 0, যা মিথ্যা. কিভাবে এর সবাই স্পষ্ট ধরনের এই ফাংশন লেখা হয়েছিল? হ্যা. শ্রোতা: আমরা উদাহরণ পরিবর্তে, কি করতে পারেন কোন, 0 সমান সমান সমান না, যাতে এটা সমান? Andi Peng: নং Strchr একটি ফাংশন কারণ. আমি এই ফিরে যাচ্ছি. সুতরাং রিটার্ন টাইপ কি আমাদের strchr ফাংশন? শ্রোতা: ঠিক আছে, ওহ. বা নাল. Andi Peng: হ্যা. এটা যে আমাকে বলে যে একটি গৃহস্থালি * যাই হোক না কেন এই ফাংশন, ফিরে যাচ্ছে এটি একটি পয়েন্টার হতে যাচ্ছে. উভয় ক্ষেত্রেই পয়েন্টার হতে যাচ্ছে এটা পাওয়া গেছে যেখানে প্রতি নির্দেশ, অথবা এটা আসতে যাচ্ছে একটি নাল পয়েন্টার যাও. হয় পরিস্থিতিতে, এটা যাচ্ছে কিছু একটা পয়েন্টার ফিরে যাওয়ার জন্য. আর তাই আপনি সমার্থক হলে এই, 0, সমান সমান আপনি একটি সংকলন ত্রুটি পেতে যাচ্ছেন. এটি একটি পয়েন্টার ফেরত যাচ্ছে কারণ. এবং যদি আপনি চেষ্টা করতে যাচ্ছেন একটি পূর্ণসংখ্যা একটি পয়েন্টার সুবিধাগুলি তুলনা করুন. আর কম্পিউটার নয় যে পছন্দ যাচ্ছে. একদম সঠিক. কুল. সবাই ভাল? আর দ্বিতীয়ত, আমরা যেতে চলুন একটি ফাংশন বলা strstr ওভার. এই যদি কোন উদ্বেগ ফাংশন আপনি বিভ্রান্তিকর. তারা আমাকে বিভ্রান্ত করছেন. যেমন, আপনাকে বলছি, দেখা যেতে পারে তারা সব কাছাকাছি একই শব্দ. ঠিক যখনই আপনি বিভ্রান্ত করছেন, string.h গ্রন্থাগারের টান আপ. আর আপনাকে বলছি সাজাতে পারেন যা এক এর যার মাধ্যমে. সুতরাং strstr, যে সমস্ত অনুসন্ধানের হয় একটি সম্পূর্ণ অন্য স্ট্রিং জন্য একটি পংক্তি. তাই যেখানে strchr শুধু অনুসন্ধান একটি একক চরিত্রের জন্য, একটি সম্পূর্ণ পংক্তিটি strstr অনুসন্ধান. তাই আমি এ চেহারা চেয়েছিলেন, আমি না জানি, হাই, আমার নাম Andi হয়. আর আমার সবচেয়ে ভালো বন্ধু এর নাম Andi হয়. আমি এই জন্য সন্ধান করতে চেয়েছিলাম Andi, সমগ্র শব্দ বাক্য, আমার সুই হত যাই হোক না কেন আপনি যা খুঁজছেন. আর আপনার খড়ের গাদা যাই হোক না কেন আপনি এটা জন্য খুঁজছেন. তাই যদি আপনি একটি খুঁজছেন একটি বাক্য মধ্যে নির্দিষ্ট শব্দ, যে শব্দ আপনার সুই হতে যাচ্ছে. এবং তারপর বাক্য নিজেই আপনার খড়ের গাদা হতে যাচ্ছে. আর তাই এটি শুধু অনুসন্ধান প্রথম সংঘটন স্ট্রিং সুই স্ট্রিং খড়ের গাদায়. এটা পয়েন্টার ফেরৎ প্রথম সংঘটন. , এই ক্ষেত্রে মনে ছাড়া, এটা সমগ্র স্ট্রিং প্রথম সংঘটন আপনি অনুসন্ধান করছেন যে জন্য, না শুধু একটি অক্ষর. আর তাই এই প্রায় হল ফাংশন হিসাবে একই জিনিস আমরা শুধু শুধু সঙ্গে, করেনি একটি বিট আরো নির্দিষ্টতা. আপনি দেখছেন জন্য অনুসন্ধান করছি কারণ মাত্র এক চরিত্র বেশি. এবং ব্যবহারের সঠিক একই আমরা ঠিক করেছিলাম যে এক হিসাবে. এই জমি দখলের সঙ্গে সবাই? ঠিক আছে. আমরা যেতে চলুন সর্বশেষ এক ওভার নয়, যা strrchr হয় strstr সঙ্গে বা strchr সঙ্গে গুলিয়ে ফেলা. strrchr সেখানে একটি অতিরিক্ত কিছু আছে. আপনি টাইপ করছেন সময় সতর্ক থাকুন. আপনি নিজেকে সহ খুঁজে পেতে পারেন একটি R সহ একটি অতিরিক্ত R বা না, এবং তারপর আপনার ফাংশন কাজ করে যাচ্ছে না পেছনে লেগেছে. আর আপনি বিভ্রান্ত হতে যাচ্ছেন. আপনি বানান করছি যে সাবধান সব এই ফাংশন অধিকার. সুতরাং strrchr সঠিক হয় strchr হিসাবে একই জিনিস এটা প্রথম না জন্য অনুসন্ধান ছাড়া একটি নির্দিষ্ট অক্ষর সংঘটন, বরং শেষ সংঘটন. আর তাই, এই অর্থে যে, এটা প্রায় সঠিক একই. কিন্তু এর পরিবর্তে চলন্ত একটি স্ট্রিং মধ্যে ফরওয়ার্ড, আপনি চলন্ত হতে যাচ্ছেন পিছন দিকে একটি স্ট্রিং. সঠিক একই জিনিস, আপনি আছেন শুধু একটি ভিন্ন অনুক্রমে অনুসন্ধান. আর তাই এই, সুপার হতে পারে আপনার লুকআপ জন্য সুপার দরকারী ফাংশন, প্রথম আপনার pset উপর ফাংশন. আমরা একটি লিখতে প্রয়োজন যে এর ভান করা অকার্যকর এক্সটেনশন ফাংশন যা আমরা একটি ধ্রুবক গৃহস্থালি * ফাইলের নাম পাস, শুধু একটি স্ট্রিং, একটি ফাইলের নাম, যে নাম এবং প্রিন্ট লাগে যে ফাইলের এক্সটেনশন খুঁজে. আমি ছিল উদাহরণস্বরূপ, যদি তাই pset7.zip এর স্ট্রিং পাস, এটা শুধু প্রিন্ট আউট যাচ্ছে .zip যা এক্সটেনশন. আর এই জন্য কাজ করবে এক্সটেনশন কোন ধরণের, একটি পিডিএফ জন্য শব্দ বা পিডিএফ জন্য .docx ফাইল অথবা একটি HTML ফাইল জন্য .html. প্রায় কাছাকাছি, একটি লিখুন তা করতে পারে যে ফাংশন. আমি আসলে যাচ্ছি আইডিই উপর সুইচ. এটা আছে load-- না হয় আমরা যেতে. তাই আমি এখানে সম্পন্ন করেছি সব হয় একটি গৃহস্থালি *, প্রথম পংক্তি নির্মিত, pset7.zip বলা. আমি জুম যাচ্ছি. আমি একটি দ্বিতীয় স্ট্রিং তৈরি করেছি finalpaper.docx বলা. এবং আমাকে একটি ফাংশন লিখতে হলে যে বলা শুধু প্রিন্ট আউট করা যাচ্ছে ফাইল নাম এক্সটেনশন. হয়তো মনে করতে কয়েক মিনিট সময় নিতে আপনি এই কাজ করতে যাচ্ছেন সে বিষয়ে. সামান্য বেশি চ্যালেঞ্জিং গত এক তুলনায়, কিন্তু ব্যবহার প্রায় হয় ঠিক একই. হ্যা. সুতরাং একটি ফাংশন বলা এক্সটেনশন লিখুন যে, আমি একটি ফাইল আপনাকে নাম দিতে পারেন, আমি দিতে হলে আপনি আমি pset7.zip-- আপনি শুধু .zip প্রিন্ট আউট করতে চান. আমি দিতে যদি আপনি, finalpaper.docx পছন্দ শুধু .docx প্রিন্ট আউট, যাই হোক না কেন ফাইলের শুধু এক্সটেনশন. এটি আসলে শুধুমাত্র দুটি লাইন কোড লাগে. তাই আপনি যদি দেখতে চেষ্টা এটা যে কি হতে পারে পারে. বাস্তবিক, এটা শুধুমাত্র এক লাইন কোড লাগে. কিন্তু দুটি লাইন সম্ভবত আরো মান. কি ফাংশন আমরা সম্ভবত হয় কল করতে চান যাচ্ছে? শ্রোতা: strrchr. Andi Peng: strrchr, ঠিক আছে. আমরা খুঁজছেন কারণ ডান থেকে বামে থেকে. আমি আপনাকে বলছি না দিতে এই মত একটি উদাহরণ, কিন্তু আমি চাই আপনি একটি উদাহরণ দিলে www.apple.com এবং আমি শুধু চেয়েছি .com, এটা যেখানে একটি উদাহরণ হতে চাই আপনি সর্বশেষ উদাহরণস্বরূপ কল করতে চান সময়ের এবং প্রথম, ঠিক না? আপনি কল strchr ছিল, এটি আপনি apple.com দিয়েছি হবে. আপনি strrchr বলা হলে, এটা আপনি .com দিতাম. আর তাই যা সতর্কতা অবলম্বন করা আবশ্যক আমার উদাহরণে ways--, আপনি সম্ভবত আছে পারে পারে শুধু strchr ব্যবহার করে এটি লেখা, যেহেতু শুধুমাত্র এক বিন্দু আছে. কিন্তু অন্যান্য ক্ষেত্রে, যে ক্ষেত্রে নাও হতে পারে. আর তাই সবসময় ডিজাইন করার চেষ্টা হ্যা আপনার কোড ভাল, সুতরাং যে? শ্রোতা: তাই উদাহরণস্বরূপ আপনি শুধু বলেন, আপনি strrchr না হলে এটি হবে আপনি .com বা শুধু আসা দিতে? Andi Peng: এটা আপনি .com দিতে হবে. শ্রোতা: ঠিক আছে. Andi Peng: হ্যা. এটা এটা পাওয়া যেখানে স্থানটিকে. হ্যা. 30 সেকেন্ড হতে পারে? হ্যা. সবাই ভাল হয়তো বা একটু বেশি সময়? হাতের দেখান? মাথা দেখান? কুল. কেউ যদি আমার প্রথম দিতে চান এই প্রোগ্রামের জন্য কোড লাইন? শ্রোতা: [শ্রবণাতীত]. Andi Peng: সব সুতরাং প্রথম, এর হয়তো এই ভেঙ্গে যাক. সুতরাং strrchr রিটার্ন টাইপ কি? চল যাই. strrchr, রিটার্ন টাইপ কি? শ্রোতা: চর * Andi Peng: এটি একটি গৃহস্থালি *, তাই না? যা আপনি সম্ভবত যাচ্ছেন যে মানে ধরনের অন্য গৃহস্থালি * তৈরি করতে চান করতে দোকান এটা যখনই ঠিক আছে, ফিরে? আপনি কল করা হলে কারণ ফাংশন strrchr, আপনার একটি পয়েন্টার দিতে যাচ্ছে যেখানেই থাকুন না কেন এটা যে শেষ সময়ের পাওয়া, ঠিক আছে? কিন্তু আপনি করতে চান করতে যাচ্ছেন ঠিক আছে, যে কোথাও সংরক্ষণ? তাই কিভাবে আমরা কোড না আমাদের প্রোগ্রামে এই? শ্রোতা: আপনি করতে গৃহস্থালি * [শ্রবণাতীত]. Andi Peng: হাঁ. শ্রোতা: [শ্রবণাতীত]. Andi Peng: strrchr. হ্যা. ওহ, সেখানে একটি R মিস. শ্রোতা: ফাইলের নাম [শ্রবণাতীত]. এটা কি? ওহ, এটা শুধু এস এর. Andi Peng: ওহ, এটা শুধু এস এর. হ্যাঁ, দুঃখিত. আমার খারাপ. উদাহরণ মেলেনি. শ্রোতা: তারপর এবং বিন্দু. Andi Peng: হ্যাঁ. যখন আপনাকে বলছি সাবধান এখানে are--, আমাকে জুম যাক. আমরা শুরু করছি. যখন আপনাকে বলছি সাবধান বিশেষত যখন টাইপ করা হয়, আপনি শুধুমাত্র একটি গৃহস্থালি করছেন. এটা ঘটনাক্রমে মাত্র সত্যিই সহজ বরং একক চেয়ে ডবল কোট না. ওটা কাজ করবে না. তোমার কম্পাইলার অভিযোগ করতে যাচ্ছে. আর আপনার ফাংশন শুধু চালানো যাচ্ছে না. আর তাই যখন সতর্কতা অবলম্বন করা আবশ্যক আপনি কিছু করছেন অক্ষর দিয়ে এটা একক উদ্ধৃতি যে. আর তাই এই লাইন আছে কোড সকলের জানার জন্য? আমরা একটি গৃহস্থালি * পয়েন্টার তৈরি করছি. Strrchr আয় কারণ টাইপ পয়েন্টার কিছু. আর তাই আমরা strchr কল চলুন এর উপর, যা স্ট্রিং, ফাইল আমরা পার করছি, যে নাম. এবং আমরা গত খুঁজছেন যা একটি নির্দিষ্ট সময়ের, ইনস্ট্যান্স শুধু একক উদ্ধৃতি একক উদ্ধৃতি বিন্দু. হ্যা. শ্রোতা: কি যখন আমরা ডবল কোট ব্যবহার এবং আমরা একক উদ্ধৃতি ব্যবহার করার সময় কি? Andi Peng: হ্যা. তাই ডবল কোট সবসময় আপনার ব্যবহৃত যখন শুধু একটির বেশি একটি স্ট্রিং আছে. আপনি strstr করছেন তাহলে তাই, যা এক যে আপনি স্ট্রিং জন্য আপনাকে একটি পংক্তি অনুসন্ধান উদ্ধৃতি চিহ্ন মধ্যে এটি পাস হবে. কিন্তু কোন সময় তা ঠিক একটি অক্ষর, আপনি একক উদ্ধৃতি কাজ করতে চান. এটা মনে রাখা একটা ভাল জিনিস. তাই এখন আমরা আমাদের আছে পয়েন্টার, আমরা এটা দিয়ে কি করবেন? আমি আপনাকে বলছি বলছি ঠিক আছে, এটা মুদ্রণ? সুতরাং [শ্রবণাতীত], আপনি চান আমার কোড লাইন দিতে? শ্রোতা: printf-- Andi Peng: হ্যা. শ্রোতা: --you একটি জায়গা ধারক প্রয়োজন. Andi Peng: হ্যাঁ. শ্রোতা: জায়গা ধারক প্রিন্ট করা হবে. আমি কি জায়গা জানি না ধারক তা নির্দেশ কিন্তু হয়. ঠিক আছে. এর জন্য এখন যে লাফালাফি করা যাক. শ্রোতা: এবং তারপর কমা Andi Peng: পয়েন্টার, ডান? শ্রোতা: পয়েন্টার, হ্যাঁ. Andi Peng: তাই ধরনের একটি কৌতুক প্রশ্ন, পয়েন্টার এবং স্ট্রিং সঙ্গে কাজ করার আছে যে আমরা ধরনের ইতিমধ্যে স্বপ্ন করেছি. জায়গা ধারক কি ধরনের আমরা না একটি গৃহস্থালি * একটি পয়েন্টার জন্য প্রয়োজন? শ্রোতা: [শ্রবণাতীত]. Andi Peng: হ্যা. এটা আপনাকে বলছি এটা মনে হয় তুলনায় অনেক সহজ. শ্রোতা: স্ট্রিং? Andi Peng: এটা ঠিক, শুধু একটি পংক্তি. স্ট্রিং মনে রাখবেন, কারণ সত্যিই কোন অস্তিত্ব নেই. একটি গৃহস্থালি * সঠিক হয় পংক্তিরূপে উল্লিখিত হয় একই জিনিস. তাই সত্যিই এই কি হয় সব বরাবর ব্যবহৃত হয়েছে উচিত. ঠিক আছে. আমরা এই চলমান চেষ্টা করতে পারেন, তাহলে চলুন দেখা যাক. এর একটি মেক এক্সটেনশন করুক না. কুল. আমি পাশ কিভাবে আপনি দেখতে psset7.zip এবং finalpaper.docx, এবং এটা শুধু কপি করে প্রিন্ট আউট .zip ও .docx? ধারণা তৈরী কর? ঠিক আছে, তাই আমি আপনার চেহারা আপ মনে আপনি আছেন আপনার pset মধ্যে ফাংশন যদি জিজ্ঞাসা করা যাচ্ছে স্ট্রিং, একটি নির্দিষ্ট সমাপ্তি আছে আপনি একটি নির্দিষ্ট ত্রুটি কোড দিতে হবে. আর তাই এই বেশ ভয়াবহ হবে. আপনি চিন্তা করতে পারেন যদি কারণ এক্সটেনশন কি আউট, তারপর আপনি যে তুলনা করতে পারেন এটা মেলে না তাহলে এক্সটেনশন দেখতে একটি নির্দিষ্ট এক্সটেনশন সঙ্গে. এবং তারপর আপনি যেতে পারেন সঠিক একটি ত্রুটির বার্তা,? হ্যা. শ্রোতা: সুতরাং আমরা না 1 বা কিছু যোগ আছে? পয়েন্টার the-- যেতে হবে Andi Peng: না. শ্রোতা: এটা পরে --point. Andi Peng: হ্যা. এটা ঠিক যে স্থানটিকে যেখানে সংঘটন ছিল. সুতরাং এখানে যেমন, আমরা করছি সময়ের মধ্যে অনুসন্ধানের জন্য. সুতরাং এটা ফেরত যাচ্ছে সময়ের একটি পয়েন্টার. এবং তারপর এটা মুদ্রণ যাচ্ছে সময়সীমা এ শুরু. তাই আপনি যদি 1 যোগ করার প্রয়োজন হবে না. যদিও, এটা যদি, সম্পূর্ণই সূক্ষ্ম আপনি শুধু ধরনের, কি জানত না নিজেকে এটি পরীক্ষা. একটি নমুনা প্রোগ্রাম তৈরি করুন. এটা নিজে পরীক্ষা করুন এবং এটা মুদ্রণ যেখানে দেখতে. যে এটি কি একটি খারাপ ভাবে না. কুল. এবং যে বেশ অনেক সব আমি আজ আপনার জন্য বলছি ছিল. আমরা আজ pset জিনিস অনেক করেনি. তাই সন্দেহ হলে, মত আমি সবসময় সন্ধান, বলেন এই pset জন্য string.h লাইব্রেরি. একটি অনেক আছে যাচ্ছে সেখানে যে ফাংশন উপযোগী হতে পারে. কিছু দরকারী হতে পারে না. আমি সত্যিই জানি না. এটা মাধ্যমে ওয়েড, আছে তাদের আভা. strstr, strchr, strrchr হয় সুপার, সুপার সহায়ক, সেইসাথে strcpys এবং strcasecmps আমরা ইতিমধ্যে ব্যবহার করেছি যে. এটা নিয়ে তালগোল পাকানো ঠিক অনেক যদি তারা সমান স্ট্রিং, নির্ণয় স্ট্রিং আউট স্টাফ পেয়ে, এবং সঠিকভাবে ফাইল খুলতে সক্ষম হচ্ছে. এটা ফাইল ইনপুট / আউটপুট অনেক. pset সত্যিই যে খারাপ না. আপনি একটি নিতে যাচ্ছেন এটা, এটা বিনামূল্যে ডাউনলোড তাকান, এবং কোড আভা দেখতে. কোন উদ্বেগ, কোড আপনাকে আসলে লিখতে এ সব খারাপ না. কারো সাথে সমস্যা থাকে তাদের সার্ভার, অধ্যায় পরে আমাকে দেখতে আসা. না এর জন্য আবার ক্ষমাপ্রার্থী হ্যালোইন ক্যান্ডি আনয়ন. আমি আমার সাথে ভুল ছিল কি না জানি না. কিন্তু আমরা দ্বিগুণ হবে ক্যান্ডি পরবর্তী সময়. আপনার pset মধ্যে এবং সৌভাগ্য এই সপ্তাহে. হাঁ.