[Powered by Google Translate] [সপ্তাহ 9]
[ডেভিড জে Malan - হার্ভার্ড বিশ্ববিদ্যালয়]
[এটি CS50. - CS50.TV]
ঠিক আছে. ফিরে আসার জন্য স্বাগতম. এটি CS50, এবং এই সপ্তাহে 9 শুরু.
বিশেষ করে আজ আমরা C-এর প্রেক্ষাপটে ফোকাস নকশা, আর উপর
কিন্তু মধ্যে PHP 'র কনটেক্সট এবং এসকিউএল একটি বিট এবং জাভাস্ক্রিপ্ট একটি বিট,
বিশেষ করে উভয় দিকে pset 7 শেষ এবং আপনার চূড়ান্ত প্রকল্প.
বস্তুত, যদি এক পর্যায়ে আপনি আপনার চূড়ান্ত প্রকল্প আছে
যেখানে সম্ভবতঃ হিসাবে একটি ঘন্টা বা তাই আগে আপনি অন্তত কিছু চিন্তার দিতে শুরু
আপনার চূড়ান্ত প্রকল্প এবং আপনি 1 বা 2 সহপাঠীদের সাথে সহযোগিতা চাই চিন্তা করছি,
যদি আপনার সমস্যা হয় সংযোগ সহপাঠীদের সঙ্গে বলেন,
যাও cs50.net/partners/form এ ফর্মটি পূরণ দ্বিধা বোধ করবেন না.
এটি শুধু অনুরোধ আপনি কে, কি ধরনের প্রকল্পের আপনি চিন্তা করছেন,
যেখানে আপনি শুধু যৌক্তিক কারণে বাস.
এবং আপনি যদি পরের সপ্তাহে তাই বা স্প্রেডশীট সেখানে URL-এর উপর নজর রাখতে চাই,
তারপর আপনি একটি গুগুল ডক এর শুধুমাত্র পাঠযোগ্য সংস্করণ দেখতে পারেন
যা আমরা যে তথ্য সংগ্রহ করছি.
সব উপায়ে যদি আপনি কারও সাথে কাজ করতে চান, মনে ব্যক্তিদের কাছে পৌঁছাতে বিনামূল্যে
এর মাধ্যমে যে প্রক্রিয়া.
কিন্তু লোকেরা অধিকাংশ কাজ একাকী না. এটা সম্পূর্ণই সূক্ষ্ম.
তাই যে কোন ভাবেই এই বাধ্যতামূলক হয় না মনে.
এটি শুক্রবার ঠিক ছিল আমার এবং দলের কোনো এখানে খুব কম,
অধিকাংশ অংশ জন্য খালি থিয়েটার.
হয় 3 পর্যটকদের বসা পর্যন্ত উঠে আসে, যাতে ছিল একটু অসুবিধাজনক.
কি আমরা স্বপ্ন ছিল উপাত্ত এবং আমরা pset 7 সামান্য বিট সম্পর্কে বললাম.
এবং যদি আপনি ভিডিওতে যে এখনও পারিনি ঘটেছে, যে সূক্ষ্ম.
আমি যে কোন শর্ত সংজ্ঞায়িত যা অন্যথায় আমরা নিতে জন্য দেওয়া হবে চেষ্টা করব
শুক্রবার বক্তৃতা এর উপর ভিত্তি করে.
>> কিন্তু আজ আমরা বিন্দু থেকে আপনি পেতে চেষ্টা করে যাচ্ছেন
হচ্ছে শুধুমাত্র pset 7 ভালো কিছু করতে পারবেন না
কিন্তু সত্যিই বুঝতে কি ফণা এর নীচে যাওয়া,
বিশেষত abstractions যে জায়গায় আমরা functions.php ফাইল রাখা কিছু
আপনার জীবনের একটি বিট সহজতর করে তুলতে যাতে কিন্তু যে শেষ পর্যন্ত আপনি বুঝতে
যাতে যখন প্রশিক্ষণের চাকার কয়েক সপ্তাহ আসা বন্ধ করতে এখনও বেঁচে থাকতে পারে
বাস্তব জগতে কোনো এবং আপনি পুনরায় নীচের স্তরের CS50 ফ্রেমওয়ার্ক ছাড়া এই উপাদান না.
এই $ আপনাদের মধ্যে যারা পরিচিত জন্য _SESSION,
অথবা যারা ইতিমধ্যে শুক্রবার ভিডিও ধরা কি, আমাদের সময় কি না দেওয়া
একটি পিএইচপি ভিত্তিক ওয়েব অ্যাপ্লিকেশন?
এটি একটি superglobal পরিবর্তনশীল, যার অর্থ এটি আত্মা মধ্যে অনুরূপ এবং GET পোস্ট
এবং কয়েক অন্যদের, কিন্তু কি জিনিস এই জন্য দরকারী?
>> কি সেশনের জন্য ব্যবহৃত হয়? হাঁ. [ছাত্রদের] লগ ইন
দুঃখিত? [ছাত্রদের] লগ ইন লগিং প্রকৃতপক্ষে ইন.
Pset 7 ইঞ্চি আমরা এই সময় superglobal যাও লগ ইন করার সুবিধার্থে ব্যবহার করছেন
এবং কি এই superglobal সম্পর্কে চমৎকার হয় যে এটা একটা মিশুক অ্যারে.
একটি এসসিয়েতিভ আরে, রিকল, শুধুমাত্র একটি অ্যারের তবে যাদের সূচকসমূহ নেই সংখ্যা হতে হবে
ভালো 012. তারা সংখ্যা হতে পারে অথবা তারা এমনকি স্ট্রিং হতে পারে.
এবং তাই আপনি যদি এখনো pset 7 মধ্যে dived করেছি, আপনি যে আমরা একটি কী বলা আইডি সংরক্ষণ করা হয় প্রত্যাহার করা হতে পারে
এই এসসিয়েতিভ আরে যার মান 123 মত কিছু ভিতর -
যাই হোক না কেন বর্তমানে এর ইউজার আইডি লগ ইন করা হয়.
এই জন্য প্রেরণার এমনকি পরে ব্যবহারকারী localhost পরিদর্শন করেনি
আমার ওয়েবসাইট বা আরো সাধারণভাবে এবং তারপর তারা লগ ইন করেছি,
এমনকি যদি তারা ক্লিক না করেন অথবা কোনো লিঙ্ক 5 মিনিটের জন্য আমার ওয়েবসাইট ফিরে
অথবা এমনকি একটা ঘন্টা বা দিনের কিন্তু তারা তাদের ব্রাউজার উইন্ডোতে খোলা ছেড়ে,
আমি এই superglobal মাধ্যমে মনে করতে পারেন যে তারা লগ ইন
>> অন্য কথায়, এটা সম্পর্কে সামান্য কিছু আমি একটি দীর্ঘমেয়াদী ব্যবহারকারী সম্পর্কে চান স্টোর করতে পারবেন.
এবং আপনি কি সত্যিই এটি একটি শপিং কার্ট এর আবির্ভাব হিসাবে মনে করতে পারেন.
আমাজন মত জায়গা সম্ভবত আপনাকে একটি শপিং কার্ট মধ্যে জিনিষ করা,
কিন্তু যে HTTP, প্রোটোকলের সাহায্যে ওয়েব ক্ষমতা, হয় আড়ম্বরহীন
এ অর্থে যে আপনি যখন একটি ওয়েবসাইট দেখুন,
অধিকাংশ অংশ জন্য আপনি কিছু ধ্রুবক নেটওয়ার্ক সংযোগ না
মধ্যে আপনার ব্রাউজার এবং সার্ভার.
যত তাড়াতাড়ি আপনি HTML এবং JPEGs এবং gifs ডাউনলোড করেছি এবং সকল যে,
সংযোগ দূরে চলে যায় এবং আপনি কেবল HTML এবং যাবদ্ধর একটি সার্ভার থেকে কপি আছে.
কিন্তু যদি সার্ভারে আপনার সম্পর্কে কিছু মনে রাখতে চায়,
বোঝা সার্ভারের প্রকৃতপক্ষে যে তথ্য রেকর্ড করা হয়.
এবং যাতে আপনি প্রোগ্রামার কে সার্ভারের উপর নিয়ন্ত্রণ আছে
এই superglobal এসসিয়েতিভ আরে অধিকাংশ আপনি যা চান, এর ভিতরে বসাতে পারেন
এবং সেখানে পরবর্তী সময় ফিরে আসে ব্যবহারকারী হতে হবে,
এটি মিনিট বা এমনকি দিনের পরে, যদি না তারা তাদের ব্রাউজার উইন্ডো বন্ধ,
এ সময় বিন্দু দেখা যাবে না.
এটা ক্ষণজীবী স্টোরেজ, এটা পরিবর্তিত, এবং এটা ভাগো সেসব
যত তাড়াতাড়ি তাদের ব্রাউজার ব্যবহারকারী প্রচেষ্টা - ট্যাব, শুধু যে প্রায়ই সমগ্র ব্রাউজার,
যার ফলে কার্যকরীভাবে ইউজার লগ আউট করে দিচ্ছি.
সুতরাং কিভাবে আসলে এই ব্যাপার প্রয়োগ?
যাক এর একটি সহজ উদাহরণ আমরা শুক্রবার দিকে তাকিয়ে এ দ্রুত কটাক্ষপাত.
যারা অপরিচিত জন্য, এটি ছিল এই হিসাবে হিসাবে সহজ.
এটি একটি ওয়েব পাতা যার একমাত্র উদ্দেশ্য জীবনের যাও সম্পর্কে বলতে হয়
কতবার আমি এই পৃষ্ঠাটি পরিদর্শন করেছেন.
এটি প্রথম সোমবার সময় এখানে যে আমি এটি পরিদর্শন করেন, তাই এটি 0 বার.
>> কিন্তু যদি আমি শুরু করে এই পৃষ্ঠাটি পুনরায় লোড করার সময় এটি 1, 2, 3, 4, 5 বলছেন,
এবং অবশেষে এই গণনা পর্যন্ত মাত্র, রাখতে হবে আপ, আপ, আপ, আপ
প্রতিটি সময় জন্য আসলে আমি পুনঃ লোড করুন ক্লিক করুন.
সুতরাং কিভাবে এই কাজ? আমাকে ভিতরে এই ফাইলটি নামক counter.php অফ যান.
এটি উপরের ভাগে সব মতামত নীল, কিন্তু আকর্ষণীয় অংশ এখানে দেওয়া হল.
লাইন 13 আমরা এই ফাংশন কল session_start,
এবং যে আক্ষরিক অর্থ হল সমস্ত আপনাকে যদি আপনি অ্যাক্সেস থাকতে চান
এই বিশেষ superglobal $ নামক _SESSION.
যে এটি সব সম্ভব, এবং আমরা একটি মুহূর্ত কিভাবে যে সমস্ত সম্ভাব্য মধ্যে দেখতে পাবেন.
ইন লাইন 16 বিজ্ঞপ্তি আমি কি করছি.
যদি কী, বলা পাল্টা - অন্য কথায়, সূচক মান - "প্রতি"
এই অ্যারের ভিতরে বিদ্যমান সময় বলা হয়, তাহলে কি আমি এটা দিয়ে কাজ নীচের লাইনে?
লাইন 18 কি করছে?
>> [শ্রবণাতীত ছাত্র প্রতিক্রিয়া] কি যে? [ছাত্রদের] মান স্টোরিং. গুড.
এটা মান সময় যে সংরক্ষণকারী একটি নতুন স্থানীয় অস্থায়ী পরিবর্তনশীল এর মধ্যে ডান এখন,
সব ছোট হাতের মধ্যে $ পাল্টা.
উল্লেখ্য, ইতিমধ্যে পিএইচপি হচ্ছে একটু অলস এখানে.
আমরা int বা float অথবা পংক্তি বা ভালো কিছু কোন উল্লেখই নেই উল্লেখ্য
কারণ স্বাস্থ্যহীন পিএইচপি টাইপ করা হলে, যেখানে আপনি একটি পরিবর্তনশীল ধরণ উল্লেখ করতে হবে না,
এবং এখানে এই ক্ষেত্রে আমি এটা ঘোষণা করেছেন এমনকি না এখনো.
আমি এটি প্রকাশক ভিতরে এইসব কোঁকড়া ধনুর্বন্ধনী এর করছি এবং সি অসদৃশ, এই আসলে ঠিক আছে.
কোন ব্যাপার কিভাবে গভীরভাবে একটি পরিবর্তনশীল এর ঘোষণা নেস্টেড পিএইচপি হয় -
কোঁকড়া কোঁকড়া ভিতরে বক্রবন্ধনী এবং মত বক্রবন্ধনী, ভেতরে -
যে মুহূর্তে এটি সময় বিদ্যমান প্রোগ্রাম অবশিষ্টাংশ হবে,
ভালো বা খারাপ জন্য.
তাই অবিলম্বে তা বিশ্বব্যাপী যত তাড়াতাড়ি আপনি এটি হিসাবে এখানে আমরা সংজ্ঞায়িত করছেন.
>> অন্যথায়, যদি আমি যে সময় superglobal মধ্যে কিছু আছে না খুঁজে,
আমি দৃশ্যত 0 করছি এই পরিবর্তনশীল পাল্টা আরম্ভ করা,
যার ফলে শুধু অভিমানী ব্যবহারকারী এখানে করেনি আগে কখনো ছিল না.
এবং অবশ্যই এই তারপর পাল্টা বৃদ্ধিশীল কিভাবে হয়?
আমি এই মিশুক অ্যারের মান যে এর ভিতরে আপডেট করছি
দ্বারা সেট যাই হোক না কেন এটি পাল্টা বর্তমানে + 1 টি সমান.
যদি আমি স্ক্রল পৃষ্ঠার HTML এখানে নিচে, এটা আসলে বেশ সহজ.
সমস্ত আমি এই পাতা মূল অংশের মধ্যে আছে, না "আপনি তাই এবং তাই-বার এই সাইটটি পরিদর্শন করেন."
এবং এই একটি পিএইচপি কনস্ট্রাক্ট.
আপনি যদি না <? =, এই কি ফাংশন কার্যকরভাবে সমতুল্য?
এটা printf ভালো কিছু, যা আমরা সি অনেকবার করেছি দেখা যাও সত্যিই সমতুল্য,
যদিও হিসাবে আপনি pset 7 বৈশিষ্ট থেকে ইতিমধ্যে জানতে পারেন,
মুদ্রণ এছাড়াও একটি ফাংশন যে কিছু ছাপে আউট, এটা আসলে ফরম্যাট কোড ব্যবহার করে না,
এবং আপনি আসলে প্রতিধ্বনি হিসাবে ভাল বলতে পারেন.
এগুলি সব অত্যন্ত সামান্য ভিন্ন যদিও নেট প্রভাব পরিণামে একই.
তাই এই চিহ্ন ব্যবহার সমান একটি এরকম মার্জিত ভাবে ঠিক সাজানোর
আরো succinctly তুলনায় অন্যথায় আপনি সক্ষম হবেন.
সুতরাং যে সব এই সাইট আছে. সেটা ছাপে কাউন্টার মান আউট.
কিভাবে এই সব না আসলে কি ঘটছে?
আপনি সপ্তাহে প্রত্যাহার বা তাই আগে আমরা শুরু ফণা নীচে খুঁজছেন হতে পারে
এ কিভাবে একটি ওয়েব পাতা পরিদর্শক এই ট্যাবটি ব্যবহার করে কাজ করে.
>> Chrome-এর ম্যাক সংস্করণ, Windows সংস্করণের, এমনকি এবং Linux সংস্করণের মধ্যে এই উভয় আছে,
এবং ফায়ারফক্স এবং ইন্টারনেট অনুরূপ প্রক্রিয়া আছে যেখানে আপনি এই বিল্ট ইন ডিবাগার আছে
ভিতর ব্রাউজার.
চলুন নিম্নলিখিত কটাক্ষপাত করা.
আমরা একটি ট্যাব আভা করেছি এখানে পেয়েছি, এবং leftmost একটি উপাদানসমূহ প্রত্যাহার,
এবং কোন ব্যাপার কিভাবে godawful HTML এবং জাভাস্ক্রিপ্ট একটি পাতা আছে,
পুনরাহ্বান যে উপাদানসমূহ ট্যাব সঙ্গে আপনি আসলে HTML এর hierarchically নেভিগেট করতে পারেন
এবং সুন্দর এবং সুন্দরভাবে.
তাই আপনি যদি Google বা Facebook-এর মতো একটি ওয়েবসাইট থেকে জানতে চেষ্টা করছেন
অথবা সত্যিই কোনো ওয়েবসাইট, বুঝতে পারছি যে আপনি সম্ভবত বন্ধ ভাল
খুঁজছি সোর্স কোড এই ভাবে কাঁচা উৎস দেখছেন উল্টোদিকে,
যা একটি জগাখিচুড়ি, হতে পারে আমরা বিশেষত হিসাবে Google এর সাইট দেখা করেছি.
সুতরাং যদি আমি পরিবর্তে নেটওয়ার্ক ট্যাবে ক্লিক করুন এখানে,
এর দিন দেখতে কি যখন আমি এই পৃষ্ঠা পরিদর্শন করছেন.
প্রথম আমাকে আমার ক্যাশে পরিষ্কার.
আমি Chrome-এ সেটিংস মধ্যে এবং তারপর যেতে যেতে ইতিহাস চলেছি
এবং তারপর সকল ব্রাউজিং ডেটা সাফ করুন.
আপনি অন্য কোন উদ্দেশ্যে এই অনুরুপ হতে পারে ব্যবহৃত, [হাস্য]
কিন্তু যখন এটি উন্নয়নশীল ওয়েবসাইটসমূহের সাথে আসে, এটি একটি প্রকৃত দরকারী -
যদি আপনি হাসতে করছি আপনি জানেন. [হাস্য]
এটা আসলে খুব দরকারী যখন ওয়েবসাইটের উন্নয়নশীল দৃষ্টিভঙ্গিই এর কারন হল
কুকিজ ক্যাশে HTML ফাইল, ক্যাশে জাভাস্ক্রিপ্ট ফাইল এবং ভালো জিনিস ভালো জিনিস
আসলে একজন বড় মাথা ব্যাথা হতে পারে, কারণ যদি কোন কারনের জন্য
ব্রাউজারে কিছু ফাইল ক্যাশে করার সিদ্ধান্ত নেয় এবং এখনো আপনি সার্ভারের যে ফাইল পরিবর্তন করেছেন
কিন্তু ব্রাউজার যে ফাইলটি পরিবর্তিত হয়েছে সত্যিই বুঝতে না করেনি
এবং সেইজন্য আসলে না এটি পুনরায় ডাউনলোড করুন এমনকি যখন আপনি পুনঃলোড বাটন ক্লিক করুন,
অধিকাংশ surefire উপায় ঠিক নিশ্চিত ফল্ট আপনার কোড সঙ্গে নয়, এক,
এটি ব্রাউজারের সাথে এর ব্যবহার, এখানে আপনার ব্রাউজারে যেতে হয়
এবং শুধু সমগ্র ইতিহাস যাতে কোন বিভ্রান্তির আছে পরিষ্কার.
>> এবং আপনি যদি সত্যিই ভীতু হতে চান, ব্রাউজার, এটি পুনরায় আরম্ভ করা,
এবং তারপর নিশ্চিত করুন যে সব আশানুরূপ কাজ করছে না.
তাই সংক্ষিপ্ত, ক্লিয়ারিং ক্যাশে ভাল যখন উন্নয়ন করছেন.
তাই আমরা এখানে নেটওয়ার্ক ট্যাব আছে.
আমি আগে 9 বার সাইট পরিদর্শন করেন, তিনি কিন্তু আমার এখন এগিয়ে যান এবং পুনঃলোড ক্লিক দিন.
এবং আমি ফিরে নিচে 0.
চলুন আসলে কিভাবে এটা এই সময় superglobal হচ্ছে বাস্তবায়িত দেখুন.
আমি 1 HTTP অনুরোধের যে হয়েছিল ক্লিক চলেছি,
এবং এই ডিবাগিং উইন্ডো দেয় সম্পর্কে যে ভেতরের চেহারা.
এখানে আমি শুধুমাত্র সার্ভার, যা আকর্ষণীয় হয় না থেকে প্রতিক্রিয়া দেখুন.
আমি যে কোনো উপায়ে এই সংখ্যা করেছি দেখা যায়.
কিন্তু কি টেকনিক্যালি আকর্ষণীয় হয় হেডার.
যদি আমি এখানে স্ক্রল ডাউন এবং অনুরোধ হেডার ফোকাস এবং উৎস দেখুন ক্লিক করুন,
আমি কি দেখতে যাচ্ছি আক্ষরিক হয় HTTP অনুরোধের
যে সার্ভার থেকে আমার ব্রাউজার গিয়েছিলাম,
হচ্ছে অপারেটিভ শব্দ GET এবং তারপর / counter.php হচ্ছে ফাইলের নাম,
HTTP/1.1 ঠিক হচ্ছে HTTP-র সংস্করণ যে আমার ব্রাউজার ব্যবহার করা হয়.
এই লাইন এখানে একটি ব্রাউজার থেকে সার্ভারে সামান্য অনুস্মারক কি সার্ভারের নাম
যে কথা বলতে চায়.
এবং তারপর এই বাকি কখনও আকর্ষণীয় কিন্তু প্রাসঙ্গিক নয় অধিকার এখন.
>> এটি একটি কৌতুহল ঠিক ধরনের.
রহস্যপূর্ণ যদিও এই স্ট্রিংটি, যে কোনো সময় আপনার ব্রাউজার একটি ওয়েবসাইট পরিদর্শন
এটি সার্ভার হয় পরিচায়ক কি ব্রাউজার ব্যবহার করছেন
এবং কি অপারেটিং সিস্টেম ব্যবহার করে এবং আপনি কি সংস্করণ উহার করছি.
তাই কখনও যদি আপনি সিএনএন এবং যাবদ্ধর ভালো কিভাবে ওয়েবসাইটগুলি করেছি বিস্ময়ের উদ্রেক
কি ম্যাক ব্যবহারকারীদের শতকরা ওয়েব, পিসি ব্যবহারকারীদের আছে জানি,
ইন্টারনেট ব্যবহারকারী, ক্রোম ব্যবহারকারীদের এবং ভালো, কারণ এটি আমাদের ব্রাউজার সব
প্রতি একক ওয়েবসাইট কহন আউট সেখানে কি আমরা.
এটা ব্যক্তিগতভাবে সনাক্তকরণযোগ্য তথ্য অগত্যা থাকে না,
কিন্তু এটি কি আপনার সার্ভারের IP ঠিকানা এবং কি ব্রাউজার এবং অপারেটিং সিস্টেম ব্যবহার করে আপনি তা বলার আছে.
তাই যে যেখানে এই তথ্য.
কিন্তু এখন কি আরো আকর্ষণীয় যখন এই সেশনে আসে প্রতিক্রিয়া হেডারের হয়.
আমাকে উৎস দেখতে পরবর্তী প্রতিক্রিয়া ক্লিক করুন.
কি এখানে একটি আকর্ষণীয় কিছু জিনিস.
1, আমরা পেয়েছি একটি 200 অবস্থা ফিরে কোড.
কারণ আমরা মানে সব ঠিক থাকে তা দেখতে এই অবস্থা কোড না.
মানে অন্য কিছু বিপরীতে আক্ষরিক অর্থ ঠিক আছে.
একটি সংখ্যা দেখতে যে আমরা কখনও কখনও এর জন্য খারাপ কি? [ছাত্রদের] 404.
পাওয়া 404, ফাইল না, 403 আপনি ইতিমধ্যে আকস্মিকভাবে দেখা হতে পারে,
যা নিষিদ্ধ করা হয়েছে, যার মানে আপনি chmod কিছু, সম্ভবত ভুলে গেছি.
এবং অন্যদের একটি গুচ্ছ আছে.
>> নিচে এখানে, এই সামান্য একটি ছবি.
আমি সত্যিই শুধু লিখেছেন gedit পেস্ট দ্বারা এই ফাইল একটি মাত্র কয়েক মিনিট আগে.
কেন 1981 সালে এই পৃষ্ঠার আগে সত্যিই একটি ওয়েব ছিল মেয়াদ শেষ?
যাচ্ছে কি নেই এর?
>> [শ্রবণাতীত ছাত্র প্রতিক্রিয়া] সময় স্ট্যাম্প. কিন্তু কেন?
এটা কিছুটা অবাধ, কিন্তু এটা প্রকৃত দরকারী.
এই কি আমার ব্রাউজারে বলছে হয় এই পিএইচপি ফাইল আপনি এইমাত্র যেই অনুরোধ করেনি ইতিমধ্যে মেয়াদ শেষ.
আসলে, এটি মেয়াদ শেষ 30 বছর আগে.
যে কি সত্যিই কিন্তু এর মানে?
এটা ঠিক পরের সময় ব্যবহারকারী এই পৃষ্ঠা পরিদর্শন মানে,
দ্বারা পুনরায় লোড হচ্ছে কিনা বা ঠিকানা দণ্ডে টাইপ করা URL-এ,
নিশ্চিত করুন যে আপনি যান এবং এটি একটি নতুন অনুলিপি আনা হয়েছে.
এটি ক্যাশে কীট ধ্বংস দিবসে একটি উদাহরণ বাছাই করা,
একটি মূঢ় শব্দ যে শুধু মানে ব্রাউজার নিরুত্সাহিত করার চেষ্টা
আসলে ক্যাশে HTML থেকে যে একটি সার্ভার থেকে পাঠানো হয়েছে
যাতে আপনি পুনঃলোডে আঘাত দূর্ঘটনাক্রমে না এবং তারপর ফাইল একই সংস্করণ দেখতে.
আপনি আসলে একটি নতুন অনুলিপি প্রেরণ সার্ভার চান.
তাই ঠিক যে এটা 1981 এর মানে হল যে এর কি যন্ত্রপাতি চয়ন করা হয়
হিসাবে অতীতের একটি অবাধ তারিখ.
কিন্তু বাস্তব সরস লাইন এখন এই এক.
আপনি এমনকি 50 আগে সম্ভবত করছি কুকিজ অস্পষ্টভাবে সঙ্গে পরিচিত.
হিসাবে ডান এখন, বিশেষত মধ্যে যারা কম আরামদায়ক বা মধ্যে,
আপনার বোঝার মধ্যে একটি কুকি কি অধিকার এখন
যদিও আমরা আপনার বোঝার আরো প্রযুক্তিগত করা সম্পর্কে?
কুকি কি? হাঁ.
[ছাত্রদের] ব্যবহারকারী সম্পর্কে তথ্য, যদি তারা তাদের ব্যবহারকারী নাম বা কিছু না করেছি চান.
>> গুড. এটি ব্যবহারকারী সম্পর্কে তথ্য, তারা ইতিমধ্যেই তাদের ইউজার নাম টাইপ করেছি.
কুকি হচ্ছে একটি পদ্ধতি যেখানে একটি সার্ভার ব্যবহারকারী সম্পর্কে কিছু মনে করতে পারেন না.
এবং একটি কুকি কি সত্যিই একটি টেক্সট ফাইল বা বাইট কিছু ক্রম
যে আপনার ব্রাউজারের ভিতরে সার্ভার দ্বারা নিবদ্ধ এর,
এবং ভিতর যে ফাইল বা মধ্যে যারা বাইট হয় শনাক্তকারী কিছু.
হয়তো এটা আক্ষরিক আপনার ব্যবহারকারী নাম, কিন্তু আরো প্রায়ই এটা আরো কিছু রহস্যপূর্ণ সুদর্শন
এই যেমন এখানে বিষয় - bo8dal3ct এবং তাই ঘোষণা - এই বড় আলফানিউমেরিক স্ট্রিং
যে সত্যিই শুধু এর জন্য আপনাকে একটি অনন্য শনাক্তকারী করা অভিপ্রেত.
অথবা আপনি এটি একটি ভার্চুয়াল হাত স্ট্যাম্প ধরণের হিসাবে মনে করতে পারেন.
যদি কিছু ক্লাব বা একটি চিত্তবিনোদন পার্ক আপনাকে যে আসলে আপনাকে অর্থ প্রদান করেছি মনে রাখবেন, যান
এবং সর্বস্বান্ত মধ্যে, তারা কিছু ধরণের আপনার হাতের উপর একটু লাল স্টিকার করা,
এবং যে পাল্টা যে ইতিমধ্যে আপনাকে অর্থ প্রদান করেছি লোকেরা মনে করিয়ে দেয়
এবং আপনি এবং হিসাবে আপনি দয়া করে যেতে আসতে পারেন.
কুকি হচ্ছে একটি মধ্যে আত্মা যে সামান্য অনুরূপ.
প্রথমবার আমি এই ওয়েবসাইট পরিদর্শন করেন, হিসাবে আমি আমার ক্যাশে সাফ করার পরে কি,
ওয়েব সার্ভার, এই ক্ষেত্রে প্রয়োগ, আমার হাতে একটা স্ট্যাম্প লাগাতে
যার নাম হয় PHPSESSID, সেশন আইডি,
যার মূল্য এই সত্যিই দীর্ঘ আলফানিউমেরিক স্ট্রিং.
>> সুতরাং যে এখন আমার হাতে emblazoned ধরণের যাতে পরের বার আমি আঘাত পুনরায় লোড করুন
অথবা নিজে একটি ব্রাউজারে এই URL-এ যান,
HTTP-র সংজ্ঞা দ্বারা আমার ব্রাউজার হাতে স্ট্যাম্প উপস্থাপন করতে হবে
আবার এবং আবার এবং আবার.
সুতরাং যদিও সার্ভার আমি কে জানি অগত্যা না,
তারা অন্তত জানেন যে আমি একই ব্যবহারকারী বা অন্তত, আরো নির্দিষ্টভাবে, একই ব্রাউজার.
তাই শেষ পর্যন্ত এই ভাবে সময় superglobal বাস্তবায়িত হয়.
সার্ভার কোন ধারণা আপনি কে যখন আপনি দ্বিতীয় জন্য একটি ওয়েবসাইট বা তৃতীয় সময় পরিদর্শন করেছে
যদি না আপনি এই হাত স্ট্যাম্প উপস্থাপন.
এবং যত তাড়াতাড়ি আপনি যে হাত স্ট্যাম্প উপস্থাপন,
ওয়েব সার্ভার মূলত একটি তার নিজস্ব ডাটাবেসের মধ্যে সামান্য যায়
এবং চেক, ঠিক আছে, শুধু আমি ব্যবহারকারী bo8dal3ct হাত স্ট্যাম্প আছে দেখা যায় এবং যাতে ঘোষণা.
আমাকে কি তথ্য প্রোগ্রামার সঞ্চিত করেনি দেখুন
ভিতর এই ব্যবহারকারী সম্পর্কে superglobal,
এবং তারপর আমাকে নিশ্চিত যে ডেটা আবার সময় superglobal ভেতরে করা
যাতে প্রোগ্রামার যে তথ্য পুনরায় অ্যাক্সেস করতে পারেন
এমনকি যদি কিছু মিনিট বা ঘন্টা আগে সেট ছিল.
তাই অন্য কথায়, কুকিজ, যা কিছু সময়ের জন্য খারাপ বকুনি না
কারণ ব্রাউজারে নিরাপত্তাহীনতার এবং তারা সত্যিই আমাদের গোপনীয়তা এবং এই সব লঙ্ঘন করতে পারেন,
তারা আসলে কারণ ছাড়া তাদের মহান উপযোগিতা আছে
আপনি ক্রমাগত হবে প্রতি ফেসবুক পাতা আপনি যান লগিং ইন করার
অথবা প্রতি জিমেইল আপনাকে ইমেইল পড়তে যদি ব্রাউজারে মনে করার একটি উপায় আছে কি না
ইতিমধ্যে আপনি প্রামাণ করেছি.
>> তাই এই ভাবে কুকিজ তারের জুড়ে পাঠানো হয় এবং পিছনে.
কুকিজ সম্পর্কে আরেকটি কৌতূহল, বিশেষত, এই যে এই cleartext সম্পূর্ণ হয়.
কোন এনক্রিপশন যাচ্ছে এখানে সবটা আছে,
এবং নিশ্চয় আমি মুহূর্তে HTTP-র ব্যবহার করছি.
CS50 মধ্যে আমাদের একজন পছন্দসই মুহুর্ত, যা এখন হয় 2 বছর আগে,
ছিল একটি হাতিয়ার নামক Firesheep সময় বেরিয়ে আসেন.
এটি ছিল একটি মুক্ত সফ্টওয়্যার টুকরা যে একটি নিরাপত্তা গবেষক দ্বারা সম্পাদিত হয়ে থাকে
হিসাবে একটি সম্প্রদায়ের জন্য WAKE আপ কল ঠিক কিভাবে নৃশংসভাবে বাস্তবায়িত হয়নি বলে যাও
নির্দিষ্ট ওয়েব প্রমাণীকরণ প্রক্রিয়া ছিল.
তাই কিছু সময়ের জন্য, ফেসবুকে ব্যবহৃত HTTP, HTTPS দ্বারা কোন উপর ছিল প্রায় সম্পূর্ণ.
এমনকি যদি আপনি কোন ধারণা ক্রিপ্টো কিভাবে কাজ করে, নিরাপদ, S
তাই এটা মানে অন্তত কিছু এনক্রিপশন জড়িত আছে.
ফেসবুক ব্যবহারকারীর নাম এবং পাসওয়ার্ড এনক্রিপ্ট করতে ব্যবহৃত হয়নি,
কিন্তু যত তাড়াতাড়ি আপনি আপনার দিকে তাকিয়ে pokes অথবা আপনার বার্তা বা আপনার খবর ফিড,
যে সমস্ত এনক্রিপশনবিহীন ছিল.
তাই মাত্র এক বছর বা 2 আগে পর্যন্ত ছিল জিমেইল.
কোন সময় আপনি লগ ইন, হ্যাঁ, তারা নিরাপদ এনক্রিপশন ব্যবহার করা,
কিন্তু তারপর তারা না. এবং কেন যে হতে পারে?
কেন শুধু ক্রিপ্টোগ্রাফি ব্যবহার না ভালো ব্যবহারের ক্ষেত্রে সব সময়?
ওটা কি? আমি মনে করি আমি কিছু শুনেছেন. [ছাত্রদের] গতি.
গতি, ডান? এই সমস্যা এড়ানোর পন্থা রয়েছে.
কিন্তু যদি আপনি এটি সম্পর্কে ধরনের যুক্তি মনে হয়, যদি আপনি কিছু এনক্রিপ্ট,
আপনি অন্তত একটা সামান্য আরো কাজ আছে.
ইন pset 2 যখন সিজার বা Vigenere বাস্তবায়িত বা এমনকি ফাটল,
শুধুমাত্র একটি স্ট্রিং মুদ্রণ তুলনামূলকভাবে সহজ.
এনক্রিপ্ট করার এবং তারপর একটি স্ট্রিং ন্যূনতমরূপে একটি মুদ্রণ বিট আরো কাজের প্রয়োজন.
>> সুপার জন্য গুগল এবং ফেসবুকের মত জনপ্রিয় ওয়েবসাইট,
আপনি যদি প্রত্যেক ব্যবহারকারীর জন্য প্রতি একক ওয়েব পৃষ্ঠা তারা যান জন্য আরো কাজ আছে,
যে আরো CPU-র সময় লাগে.
এবং যদি আপনি আরো CPU-র সময় প্রয়োজন, আপনি আরো সার্ভার প্রয়োজন হতে পারে,
যার মানে আপনি আরো অর্থ প্রয়োজন হতে পারে.
অনেক বছর, তাই জন্য এবং এই মাত্র সত্যিই ভাল অভ্যাস ছিল না.
মানুষ যখন তারা শুধুমাত্র SSL এনক্রিপশন ব্যবহার করার প্রয়োজন হবে.
কিন্তু পরিণত হয়, এবং Firesheep সঙ্গে এই সহকর্মী হিসাবে তৈরি সুপার পরিষ্কার,
যখন আপনাকে বলছি যে ফেসবুক বর্তমানে ডান এখন -
এর কৌতুহল আউট, আসুন যদি আপনি আপ fess দেখতে পাবেন.
যদি আপনি ফেসবুক করছি এখনই কিছু ট্যাব, এমনকি যদি তা foregrounded না,
হয় আপনার URL অথবা HTTP-র মধ্যে HTTPS?
[একাধিক ছাত্র] এস, S? [হাস্য]
ঠিক আছে. কোন HTTP-র? শুধু 1 টি? ঠিক আছে.
সুতরাং আমাদের যে সমস্ত লোক এর ফেসবুক অ্যাকাউন্ট হ্যাক অধিকার এখন পারেন.
অধিকাংশ ক্ষেত্রে এই জন্য অন্তত কিছু ওয়েবসাইটের হত্তয়া ডিফল্ট চালু, করেনি.
এবং দীর্ঘ বিবরণ সংক্ষেপে, আপনার ওয়েব ট্রাফিক এনক্রিপ্ট হয় নি,
না শুধুমাত্র HTML এর জন্য এনক্রিপশনবিহীন WiFis জুড়ে পিছনে যান,
তাই কুকি ভালো জিনিস না বাতাস জুড়ে পিছনে যান
বিনা এনক্রিপশনে কোনো ফর্ম.
তাই আপনি যদি শুধুমাত্র একটি বিট প্রোগ্রামিং জ্ঞান বা দক্ষতা Googling একটি বিট আছে
ফ্রি সফ্টওয়্যার যা এই আছে খুঁজে, সমস্ত আপনাকে যা করতে হবে starbucks বসতে হয়
একটি এয়ারপোর্ট অথবা যেখানে সাধারণত এর ওয়াইফাই আছে এনক্রিপশনবিহীন বসতে
অথবা PHPSESSID: এবং শুধু কিওয়ার্ড সেট-কুকি ভালো জন্য ঘড়ি
কারণ শুধুমাত্র যদি আপনি প্রযুক্তিগত জ্ঞান আছে ওয়াইফাই যাও ঘড়ি
জন্য বিট এই প্যাটার্ন জন্য বায়ু প্রবাহ জুড়ে যে সব,
তারপর আপনি বলতে পারেন যে লোক এর PHPSESSID যাও bo8dal এবং তাই ঘোষণা করা হবে.
এবং তারপর আবার যদি আপনি পর্যাপ্ত টেকনিক্যালি উপলব্ধি বা ডান টুল আছে,
আপনি তারপরে শুধু পুনরায় কনফিগার করার জন্য আপনার নিজস্ব ব্রাউজার করতে পারি যে হাতে স্ট্যাম্প উপস্থাপন
যাও, Facebook.com এবং ফেসবুক ঠিক হয় যে আপনি যে লোক অনুমান করা যাচ্ছে
কারণ তারা সব জানতে হয় কিন্তু যে আপনাকে এই অনন্য শনাক্তকারী আছে. আপনি কে না
সুতরাং যদি আপনি যে অনন্য শনাক্তকারী চুরি করা এবং আপনার নিজের ওয়েব সার্ভার হিসাবে এটি উপস্থাপন,
তারা কেবল আপনার যে ব্যক্তি এর খবর ফিড প্রদর্শন করতে যাচ্ছে
অথবা যে ব্যক্তি এর বার্তা বা pokes.
>> এবং এখন আমি কিভাবে ফেসবুকে যাও সম্ভবত মধ্যে HTTPS Google-কে সক্রিয় করতে হবে.
কিন্তু সত্যিই এটা হিসাবে হিসাবে সহজ.
তাই ফেসবুক এবং Google এর মত এবং এই সময়ে অর্জিত সত্যিই ভাল আছে,
কিন্তু সব কোনো ওয়েবসাইটের যে HTTP-র জন্য ব্যবহার করবেন না আরও বেশি নজর রাখা
এবং তাদের সংবেদনশীল তথ্য কিছু আছে,
এটি আর্থিক বা ব্যক্তিগত বা চান.
যদি তারা এই ব্যবহার করছি না, খুব সম্ভবত ভালো কুকিজ হতে খুব সহজেই চুরি করতে পারেন
এবং তারপর জাল, এবং যে ঠিক কি Firesheep করেছিল.
আপনি একজন প্রোগ্রামার হতে হত না.
আপনাকে যা করতে ছিল ছিল একটি ইন্টারনেট সংযোগ, এই বিনামূল্যে টুল ডাউনলোড করুন,
এবং কি কি হল আপনাকে লগ ইন করুন এবং তারপর এটি ফেসবুক নামের আপনি দেখান
Sanders মধ্যে সবাই, এই বিশেষ বিক্ষোভের মধ্যে আপনি চারপাশে,
তাদের নামের উপর এবং সমস্ত আপনাকে হয়েছিল ক্লিক সফ্টওয়্যার প্রক্রিয়া স্বয়ংক্রিয়রূপে
যে কুকি আঘ্রাণ, ফেসবুক আপনার নিজস্ব হিসাবে এটি উপস্থাপনা,
এবং, voila, আপনি লগ ইন করছেন
সুতরাং এই যে অন্য একটি আনুষ্ঠানিকভাবে "এই না".
আপনি যদি আপনার নিজস্ব হোম নেটওয়ার্ক আছে এবং আপনি মেরামত করতে চান, সর্বথা,
কিন্তু বুঝতে পারছি এটা একটি বিশ্ববিদ্যালয় পরিবেশের উপর লাইন ক্রুশ আছে.
>> কিন্তু এখানে লক্ষ্য সত্যিই হয় না কিভাবে এই না জোর দেওয়া
কিন্তু কিভাবে যে এই ধরনের বিরুদ্ধে রক্ষা করতে.
এবং তুচ্ছ এখানে সমাধান, যদিও এটি নিজেই দ্বিধান্বিত,
সত্যিই কোনো সাইট ব্যবহার করে যে ক্রমাগত মধ্যে HTTPS না হয় ব্যবহার হ্রাস করা হয়.
সুতরাং ক্রমবর্ধমান ফেসবুক এবং Google-এর মতো সাইটের জন্য প্রযোজ্য চেকবক্স আছে
যেখানে আপনি আর এই সাজানোর নেওয়ার যেতে পারে,
এবং ব্যাংকের বছর জন্য অনুরূপ কারণে এই ছিল.
তাই শুধু একটি ভয় ফ্যাক্টর যদি আমরা করতে পারেন সামান্য বিট. কিন্তু যে কথায় আছে এটি.
যে কিভাবে একটি সার্ভার মনে আপনি কে.
এবং যত তাড়াতাড়ি সম্ভব, যারা আপনি মনে করতে পারেন না, তারা আপনার সম্পর্কে কিছু মনে করতে পারেন
এই যে প্রোগ্রামার বিশেষ superglobal নামক $ _SESSION এর ভিতরে সঞ্চিত করেনি.
এবং pset 7 জন্য আমরা এটা ব্যবহার করছি মাত্র trivially কোন int মনে রাখবেন,
যেমন ব্যবহারকারীর লগ ইন করেনি অনন্য আইডি,
যাতে আমরা জানি সেখানে তারা হয়েছে আগে করেছি.
তারপর সেশনগুলিতে বা কুকিজ বা এর মত কোন প্রশ্ন?
Firesheep হিসাবে ভাল আর কোন কাজ হয় না,
এবং আপনাকে একটি বিশেষ এলোমেলো মোডে আপনার কম্পিউটার দিতে হবে
তাই আপনি আসলে নিজের ছাড়াও ট্রাফিকের জন্য করছি শোনা.
সুতরাং আপনি যদি বর্তমানে Firesheep ডাউনলোড করছেন, তা বুঝতে পারছি না বেশ সহজ এর
হিসাবে এটি একবার যাও প্রকট ছিল.
ঠিক আছে. এবং Sanders না তা না. বাড়ীতে না.
ডেটাবেস.
জিনিস আমরা pset 7 করেছিল খুব ইচ্ছা এক
আমরা ব্যবহারকারীদের যে কিছু আছে ব্যবহারকারী ID-র জন্য একটি স্যাম্পেল ডাটাবেসের তথ্য দিতে আপনি টেবিল,
কিছু ব্যবহারকারীর নাম, এবং তাহাতে কিছু পাসওয়ার্ডগুলি এনক্রিপ্ট করা.
এবং হিসাবে আপনি দেখতে পাবেন, যদি আপনার আগে থেকেই আছে না, আপনি একটি সামান্য বিট পরিবর্তন টেবিল আছে চলুন.
আপনি যে টেবিল ব্যবহারকারীদের প্রতিটি ক্যাশে কিছু যোগ আছে চলুন,
এবং আপনি অন্য কোনো ইতিহাস টেবিল, একটি পোর্টফোলিও টেবিল যুক্ত আছে চলুন,
অথবা হয়তো অন্য কিছু কল.
কিন্তু কিভাবে এই কাজ সম্পর্কে চিন্তা শর্তাবলী, আসুন এই টুল খুলুন
যা আমরা শুক্রবার ব্যবহৃত, কিন্তু যদি অপরিচিত, প্রয়োগ একটি টুল আসে
phpMyAdmin যা পিএইচপি কাকতালীয়ভাবে হয় না বলা,
কিন্তু জীবন তার উদ্দেশ্য, পরে এখানে আমি অগ্নিবর্ণ সঙ্গে লগ ইন jharvard হিসাবে,
আমাকে দেখছেন এবং আমার একটি ডাটাবেস পরিবর্তন ব্যবহারকারী বন্ধুত্বপূর্ণ ছাড় দেওয়া হয়.
>> ডাটাবেস যে আমি প্রয়োগ চলমান করছি মাইএসকিউএল বলা হয়.
এটি খুব জনপ্রিয়, এবং এটি একটি মুক্ত ওপেন সোর্স ডাটাবেস যে wonderfully ব্যবহার করা সহজ,
বিশেষ করে ভালো সামনে শেষ হয়.
উদাহরণস্বরূপ কি এই টুল সম্পর্কে না করতে পারবেন,, একটি টেবিল কাছাকাছি দেখিয়া কোন দ্রব্য.
আমাকে এগিয়ে যান এবং এই কাজের জন্য.
শুক্রবার আমরা একটি টেবিল বলা হয় যে ছাত্র ছিল সুপার সহজ তৈরি.
আইডি, নাম, এবং ইমেল - - এটা 3 কলাম ছিল এবং আমি নিজে কয়েক সারি সন্নিবিষ্ট
ভালো ডেভিড এবং মাইক এই বিশেষ উদাহরণ.
এর এই একটু আরও চলুন, এবং এর যাক যে আমরা আরো স্মরণ করতে চান অনুমান
শুধুমাত্র একটি ব্যবহারকারী নাম এবং ইমেল সম্পর্কে.
আমাকে শীর্ষে গঠন ক্লিক করুন এখানে.
এবং আবার, pset এখানে প্রয়োজনীয় পদক্ষেপের মধ্য দিয়ে পদচারনা,
তাই যদি এই কিছু একটি বিট দ্রুত না চিন্তা.
তারপর আমি এখানে ক্লিক করুন যাচ্ছি.
আমি ইমেল পরে কিছু কলাম নম্বর যুক্ত করতে যাচ্ছি
কারণ আমি বাড়িতে ভালো কিছু যোগ করতে চান.
আমি একজন ছাত্র বাড়িতে রেকর্ড করতে ভুলে গেছি.
সম্পর্কে যান ক্লিক করুন যাক, এবং এখন আমরা এই ফর্ম যে দুর্ভাগ্যবশত বাঁ দিক থেকে ডানদিকে একটি সামান্য চওড়া আছে,
কিন্তু আমি এই ক্ষেত্রের বাড়ির নাম কল চলেছি,
এবং তারপর টাইপ আমি এখন যাও চয়ন আছে.
সুতরাং আসুন একটি মাইএসকিউএল বিভিন্ন ধরনের সম্পর্কে সংক্ষিপ্ত চ্যাট আছে
কারণ যেহেতু স্বাস্থ্যহীন পিএইচপি টাইপ করা হলে এবং এটি ধরণের নাটকগুলি দ্রুত এবং ধরনের সঙ্গে শিথিল,
ডাটাবেসের মধ্যে একটি বিশেষ করে এটি অতি গুরুত্বপূর্ণ আসলে আপনার সুবিধাজনক টাইপিং ব্যবহার
কারণ জিনিষ মাইএসকিউএল এবং অন্যান্য ডাটাবেস ইঞ্জিনের একটি আপনার জন্য কী করতে পারেন
কিনা তা নিশ্চিত করুন যে আপনি মিথ্যা তথ্য আপনার ডাটাবেসের মধ্যে কি করা উচিত.
এটি বিনামূল্যে উপলব্ধ ত্রুটি আপনি চেক ধরণের.
>> বাড়ির জন্য আমরা সম্ভবত এটি কোন int, যা একটি মাইএসকিউএল মধ্যে 32 বিট মান হতে না চান.
আমরা শুক্রবার varchar, পরিবর্তনশীল দৈর্ঘ্য গৃহস্থালি জন্য যা দাঁড়িয়েছে সম্পর্কে সংক্ষেপে কথা বলা হয়নি.
এটা কি? এই যে আপনি যে এই ধরণের কিছু একটা পংক্তি হতে চান নির্দিষ্ট করার অনুমতি দেয়.
আপনি সত্যিই কি অগ্রিম কতদিন তা হল জানি না,
তাই ইচ্ছামত আমরা বলবো একটি ঘর নামের 255 টি অক্ষর থাকতে পারে,
কোনো নম্বর সত্যিই - কিন্তু আপনি 32, 64 দিয়ে যেতে পারে.
কিন্তু একটি ক্ষেত্র নামক গৃহস্থালি উপর একটি varchar ব্যবহার করার সুবিধা হলো কি?
শুধু intuitively যদি আমি নিচে স্ক্রোল করুন এখানে, গৃহস্থালির কাজ লক্ষ্য করা আছে এবং varchar আছে.
Varchar পরিবর্তনশীল দৈর্ঘ্য গৃহস্থালির কাজ; গৃহস্থালির কাজ একটা নির্দিষ্ট দ্বারা গৃহস্থালির কাজ.
শুধুমাত্র যে সংজ্ঞা দিতে ভিত্তি করে, কি এই প্রতিটি সুবিধা বা অসুবিধা?
অন্য কথায়, যারা পার্থক্য বজায় রাখে, বা কেন আপনার পছন্দ করা উচিত?
>> হাঁ. [ছাত্রদের] Varchar আরো নমনীয়তা আছে কিন্তু সময় লাগে আরো মেমরি আপ.
গুড. Varchar লাগে আরো আপ - এর চলুন দেখা যাক. আমি নিশ্চিত যে যদি আমি সঠিক শুনেছেন নই.
যে আপনাকে আরো একবার বলতে পারেন?
[ছাত্রদের] আমি varchar সম্ভবত আরো নমনীয়তা আছে কিন্তু এটা লাগে আরো মেমরি আপ.
আকর্ষণীয়. ঠিক আছে. Varchar সম্ভবত আরো নমনীয়তা দেয় কিন্তু আপনি লাগে আরো মেমরি আপ.
পরেরটির অগত্যা সত্য নয়.
এটা কনটেক্সট উপর নির্ভর করে, কিন্তু এর যে ফিরে আসা যাক.
>> [শ্রবণাতীত ছাত্র প্রতিক্রিয়া] যথাযথভাবে.
এটা আসলে এর ক্ষেত্রে যে গৃহস্থালির কাজ সাধারণত আরো মেমরি ব্যবহার করা হবে
কারণ C-এর মতো একটি গৃহস্থালি,, একটি স্ট্রিং মত হল, এটা অক্ষরের একটি অ্যারে.
তাই আপনি যদি একটি দৈর্ঘ্য 255 গৃহস্থালির কাজ ক্ষেত্র বলে,
ডাটাবেস আক্ষরিক হয় আপনি 255 অক্ষর দিতে যাচ্ছে.
এবং যদি ঘর সমাপ্ত হচ্ছে মাথের এবং মোট 6 টি অক্ষর,
আপনি 200 টি অক্ষর উপর নাশক করছি.
>> সুতরাং একটি কার্যকরভাবে varchar শুধুমাত্র অনেক অক্ষর হিসাবে ব্যবহার হিসাবে প্রয়োজন
আপ সর্বাধিক পরিমাণ.
কিন্তু আপনি মূল্য পরিশোধ আসলে কর্মক্ষমতা, সম্ভাব্য.
যদি আপনার জানা যে আপনার স্ট্রিং সব থেকে 8 অক্ষর ব্যবহার করা যাচ্ছে -
উদাহরণস্বরূপ, অনুমান যে আপনি দৈর্ঘ্য 8 পাসওয়ার্ডের প্রয়োজন -
অনুষ্ঠানে একটি গৃহস্থালি ক্ষেত্র ব্যবহার করে, যদিও না প্রায়ই এর উপর,
একটি পাসওয়ার্ড মত একটা কিছু জন্য নির্দিষ্ট দ্বারা নির্দিষ্ট হয়
কারণ এখন ডাটাবেস এমনকি স্মার্ট হতে পারেন.
যদি দেখা যায় যে প্রতি ক্ষেত্র গৃহস্থালির কাজ জানে, একটি কলামে প্রতিটি স্ট্রিং একই দৈর্ঘ্য,
আপনি পেতে র্যান্ডম এক্সেস বৈশিষ্ট্য ফিরে.
আপনি বিভিন্ন গৃহস্থালির কাজ ক্ষেত্রগুলির মধ্যে তিড়িং লাফ আপনার ডেটাবেস টেবিলের চারপাশে পারেন
একটি ডাটাবেসের কারণ সারি এবং কলাম হিসাবে মনে করি.
তাই আপনি যদি স্ট্রিং প্রতি এক হয় একই দৈর্ঘ্য,
আপনি কি জানেন যে প্রথম এক বাইট 0 হয়, পরবর্তী এক বাইট 8 এ
এবং তারপর 16 এবং তারপর 24 এবং তাই ঘোষণা.
সুতরাং যদি সমস্ত স্ট্রিং একই দৈর্ঘ্যের হয়, আপনার আশেপাশের আরো অনেক দক্ষতার তিড়িং লাফ পারেন.
যাতে কার্যকারিতা পদ একটি বেনিফিট হতে পারে,
কিন্তু সাধারণত আপনি আগাম বুদ্ধিমান বিলাসিতা না,
তাই একটি varchar এভাবে যেতে.
এখানে অন্য বিশদ এমনকি ফেসবুক অবশেষে গাড়ীতে আঘাত.
Ints মহান হয়, এবং আমরা ধরণের ডিফল্ট দ্বারা তাদের কোন সময় আমরা একটি নম্বর ব্যবহার করতে চান,
কিন্তু এটা কেবল 32 বিট.
>> এবং যদিও ফেসবুক বেশ 4 বিলিয়ন ব্যবহারকারীদের নেই এখন,
স্পষ্টভাবে এর একাধিক অ্যাকাউন্টের সাথে আছে কিছু লোক
অথবা যে অ্যাকাউন্ট খোলা হয়েছে এবং তারপর বন্ধ করা হয়েছে,
তাই ফেসবুক এবং নিজেকে আমি বিশ্বাস স্থানান্তর করতে কয়েক বছর আগে থেকে ছিল int
যাও, যথাযোগ্যভাবে হিসাবে বলা হয়, bigint, যা কেবল 64 বিট এর পরিবর্তে.
সুতরাং খুব এই একটি নকশা সিদ্ধান্ত.
আপনি যদি আপনার amazingly ভাগ্যবান চূড়ান্ত প্রকল্পের প্রারম্ভে সক্রিয় হবে,
করেনি 4 বিলিয়ন এবং 1 জন ব্যবহারকারী, বা দিতে নিতে,
যে ক্ষেত্রে ints ব্যবহার করে একটু shortsighted হতে পারে.
কিন্তু বাস্তবতা হল, আপনার ব্যবহারকারীদের টেবিল সম্ভবত ints সঙ্গে সূক্ষ্ম.
কিন্তু জন্য pset 7 মত, আপনার মত ইতিহাস টেবিল,
আপনি হাজার হাজার, লক্ষ লক্ষ ব্যবহারকারীদের আছে যদি আপনি etrade.com মধ্যে অভিব্যক্ত করা হতে পারে.
সুতরাং যেহেতু আপনি আরো বেশী 4 বিলিয়ন ব্যবহারকারীদের না থাকতে পারে,
ঐ ব্যবহারকারীদের কি আছে সময়ের তুলনায় আরো 4 বিলিয়ন লেনদেন থাকতে পারে -
ক্রয় এবং বিক্রয় এবং তাদের ইতিহাস অনেক কিছু.
তাই আপনি যদি কহা না - আবার, এই ভাল হয় যদি আপনি এই সমস্যার অনেক তথ্য আছে -
যদি আপনি কোন int মাপ মাত্রাধিক তথ্য কহা না,
bigint মত কিছু দিয়ে যাচ্ছে একটি অভিমুখ প্রায়শই যথেষ্ট গৃহীত ডিজাইনার না
কারণ মানুষ তার চিত্রে যে একটা সমস্যা দেখা যাচ্ছে না,
কিন্তু এই সহজ কিছু যে চেয়ে বড় চয়ন.
আমরা pset দশমিক 7, যা স্থায়ী স্পষ্টতা নির্ধারণ মধ্যে ব্যবহার করছেন
যাতে আপনি floats এবং টেনিস এবং reals এবং ভালো ঘটিত সমস্যা এড়াতে পারবেন.
>> এবং তারপর এখানে আছে কিছু অন্যান্য ক্ষেত্রে. আমরা তাদের এ আমাদের হাত কিছুটা তরঙ্গ করব.
কিন্তু সব তারিখ, বার মাইএসকিউএল বিন্যাসে নির্ধারিত আছে,
এবং সংরক্ষণের তারিখগুলির তারিখগুলি এবং না varchars হিসাবে সুবিধা
এর মানে হল যে ডাটাবেস আসলে বিভিন্ন ফরম্যাটের সেগুলি reformat করতে পারেন,
কিনা একটি মার্কিন বিন্যাসে অথবা ইউরোপীয় বিন্যাস বা ভালো - তবে আপনি এটি করতে চান -
অনেক অধিক কার্যকরী ভাবে যদি এটি ঠিক ছিল কিছু জেনেরিক varchar.
এবং তারপর অন্য কিছু বাইনারি, varbinary, ব্লব আছে.
এগুলি বাইনারি লার্জ অবজেক্ট, এবং আপনি এছাড়াও বাইনারি তথ্য সংরক্ষণ করতে পারেন
পাশাপাশি ডাটাবেসের মধ্যে একটি জ্যামিতিক তথ্য.
কিন্তু আমাদের জন্য সাধারণত আমরা ints এবং varchars এবং ভালো যত্নশীল হবেন.
যাক এর সাথে ঘর এই উদাহরণ শেষ করার.
হাউস আমি বলতে যাচ্ছি ইচ্ছামত 255 অক্ষরের হতে হবে.
তারপর আমরা এই ডিফল্ট মান যেত না.
ডিফল্টরূপে আমরা করা মাথের হাউস প্রত্যেকের উদাহরণস্বরূপ, পারে.
এটা কিভাবে আমরা উল্লেখ করতে পারে যে ডাটাবেস
যে কেউ সর্বদা একটি মান আছে নিশ্চিত করা উচিত. কিন্তু আমি যে করা ছেড়ে দেব.
আসলে, একজন মানুষের বাস ক্যাম্পাস বন্ধ একটি বাড়িতে এবং হইনি,
হয়তো আমি আসলে যে বাড়ির জন্য ডিফল্ট মান হল শূন্য নির্দিষ্ট করতে চান,
এবং তারপর আমি এই চেক বক্স এবং ডাটাবেস এটা ঠিক যদি ইউজার এর ঘর শূন্য হয় বলা প্রয়োজন.
>> আবার, এই একটি প্রতিরক্ষা যন্ত্রানুসঙ্গ আপনি জায়গায় বসাতে পারেন
তাই আপনার পিএইচপি কোড প্রয়োজন তা দিতে হবে না.
ডাটাবেস যে জিনিষ বা শূন্য হয় তা নিশ্চিত করা.
এবং সর্বশেষে, তারপরে আরোপ করা.
এর মধ্যে কোনোটিই সত্যিই প্রাসঙ্গিক.
বাইনারি, স্বাক্ষরবিহীন - তাদের কেউ সাথে প্রাসঙ্গিক একটি varchar যাও.
সূচক.
কোনো ব্যক্তি বা জানি বা মনে রাখা কি একটি সূচক হিসেবে একটি অনুমান আছে
জন্য ঘর মত কিছু?
এই অত্যন্ত আসলে একটি গুরুত্বপূর্ণ এবং তুলনামূলকভাবে সহজ নকশা সিদ্ধান্ত.
শুক্রবার যারা এটি এখনও দেখা যায় না, আমরা বললাম সংক্ষিপ্তভাবে প্রাথমিক নির্দেশক সম্পর্কে.
একটি ডাটাবেস টেবিলের মধ্যে, একটি প্রাথমিক কী ক্ষেত্র বা কলাম
যে একটি টেবিল থেকে সারি চিহ্নিত.
তাই বর্তমান টেবিল আমরা ID উপস্থিত রয়েছে, আমরা নাম ও ইমেল আছে.
যারা কোন ভাল প্রার্থী একটি প্রাথমিক কী হবে,
যার ভূমিকা স্বতন্ত্র সারি সনাক্ত করা হয়?
সম্ভবত আইডি.
তর্কসাপেক্ষ, আমরা যদিও ব্যবহার কি হতে পারে?
হতে পারে আপনি ইমেইল ব্যবহার কারণ এটি তত্ত্ব আছে অনন্য পারে
যদি না মানুষ ইমেইল একাউন্ট ভাগ করা হয়.
কিন্তু বাস্তবতা এই যে আপনি যদি 1234 এর মত একটি সাংখ্যিক আইডি ব্যবহার করছেন, হয়
যে মাত্র 32 বিট, যেহেতু একটি ইমেল ঠিকানা এই অনেক বাইট বা এই অনেক বাইট হতে পারে.
তাই অনন্য আইডিন্টিফায়ারগুলির জন্য দক্ষতা শর্তাদি,
এটা ভাল অভ্যাস কোন int ব্যবহার হতে থাকে
এমনকি আপনি যদি কিছু স্ট্রিং প্রার্থী যে যুক্তি দিয়ে বোঝানো যায় বা দেখানো বা বলা যায় আপনি ব্যবহার করতে পারেন আছে.
>> বাড়িতে ভালো কিছু জন্য, এই একটি প্রাথমিক কী করা উচিত নয়
কারণ তখন শুধুমাত্র 1 ব্যক্তি মাথের মধ্যে এবং চর্মার এবং ভালো 1 জন ব্যক্তির বাস. পারে
একইভাবে, এই অনন্য হওয়া উচিত নয়.
প্রাথমিক এবং অনন্য মধ্যে পার্থক্য হল আমাদের বর্তমান টেবিল ক্ষেত্রে যে,
আইডি প্রাথমিক কিন্তু ইমেল কারণ আমরা শুধু উল্লেখ জন্য প্রাথমিক হয় না -
কর্মক্ষমতা - কিন্তু এখনও এটি অনন্য করা উচিত.
তাই আপনি এখনও দাবি না করে স্বতন্ত্রতা enforce পারেন
এটা একটি গুরুত্বপূর্ণ সুপার প্রাথমিক ক্ষেত্র.
কিন্তু এই এক অত্যন্ত সহায়ক: সূচক.
আপনি যদি আপনার চূড়ান্ত প্রকল্পের জন্য আগাম জানতে জন্য pset 7, বা সাধারণ,
যে এই ক্ষেত্রের বাড়িতে কিছু আপনি অনেক অনুসন্ধান করা হচ্ছে
নির্বাচন অভিব্যক্তি বা অন্য কিছু ব্যবহার করে,
তারপর আপনি preemptively ডাটাবেস তার যাদু কাজ বলতে পারেন
এবং নিশ্চিত করুন যে যা মেমরির মধ্যে এটি কোন অভিনব ডাটা স্ট্রাকচার নির্মাণ করা প্রয়োজন
যাও ঘর উপর ভিত্তি করে অনুসন্ধান সুবিধাযুক্ত.
হতে পারে এটি একটি হ্যাশ টেবিল ব্যবহার করা হতে পারে, এটি একটি যুক্ত তালিকা ব্যবহার করা হবে.
আসলে, এটি একটি ট্রি ব্যবহার করতে থাকে, প্রায়ই একটি কাঠামো একটি B-গাছ বলা হয় -
বাইনারি গাছ নয় কিন্তু একটি B-গাছ - যা একটি অত্যন্ত ব্যাপক বৃক্ষ
আপনি যে একটি বর্গ CS124, ডাটা স্ট্রাকচার বর্গ মত দেখতে হতে পারে.
কিন্তু সংক্ষিপ্ত, আপনি যে যখন স্মার্ট ডাটাবেস সফ্টওয়্যার ব্যবহার সম্পর্কে চিন্তা করার প্রয়োজন হয় না.
আপনি এটা, বলতে পারেন "সূচক এই ক্ষেত্রের তাই আমি আরো দক্ষতার সন্ধান করতে পারেন."
>> যদি আপনি এই থামানো এবং আপনি ডাটাবেস মাথের জীবন প্রত্যেকের জন্য অনুসন্ধান চেষ্টা,
এটি রৈখিক অনুসন্ধান মধ্যে বর্তা হবে.
এবং যদি আপনি 6,000 undergrads পেয়েছিলাম কিছু বাড়ির সব জীবিত করেছি,
আপনি সমগ্র টেবিলের Matherites অনুসন্ধান খুঁজে যাচ্ছেন,
পক্ষান্তরে আপনি যদি সূচক বলে আশা, এটা কিছু ঘনিষ্ঠ একটি লগারিদমিক অনুসন্ধান করা হবে
ঐ ধরণের ছাত্র খুঁজে.
এই মাত্র একটি বিনামূল্যে বৈশিষ্ট্য চালু,
যদিও এটি স্থান কিছু পরিমাণ একটি মূল্যে আসে না.
সর্বশেষে, স্বয়ং বৃদ্ধি, এই এআই ক্ষেত্র,
যা শুধু অর্থ যদি কোন int এবং আপনি তা বাড়ায় নিজের যত্ন না চান
প্রত্যেক বার এক একটা নতুন ইউজার আছে, যে চেক,
এবং প্রত্যেক ব্যবহারকারীর যে ঢোকানো পরার স্বয়ংক্রিয়ভাবে একটি নতুন আইডি পাবেন.
চলুন শুরু করা যাক সংরক্ষণ করুন ক্লিক করুন, এবং এখন এর এই নকশা দোষান্বেষণ করা যাক.
যদি আমি ব্রাউজ, যে বিজ্ঞপ্তি উভয় মাইক এবং আমার ঘর হয় শূন্য ঢোকা.
আমি এই নিজে সম্পাদনা phpMyAdmin ব্যবহার করতে পারেন.
আমি মাথের এ যান এখানে এবং তারপর টাইপ করতে পারেন এবং আঘাত লিখুন,
এবং এখন লক্ষ্য করা টেবিল ভিন্ন.
কিন্তু লক্ষ্য করা আমি অন্য কিছু কি ভাল হতে পারে.
ডেভিড এর আইডি 1, তাই আবার phpMyAdmin শুধুমাত্র একটি প্রশাসনিক হাতিয়ার;
এই কিছু আপনার ব্যবহারকারীদের কখনও হয় দেখতে যাওয়া হয় না.
- যদি আমি বদলে উপরে এসকিউএল ট্যাব ক্লিক করুন
এবং আবার, pset 7 আপনি এই কোয়েরি আরও পরিচয় করিয়ে দিতে হবে -
আমি ম্যানুয়ালি এসকিউএল কোয়েরি কাঠামোবদ্ধ language কমান্ডটি নির্বাহ করতে পারেন
আপডেট ব্যবহারকারীদের ঘর = 'Pfoho' কোথায় আইডি = 1 সেট করুন.
এই SQL কোয়্যারিগুলোকে হয়, সুন্দরভাবে যথেষ্ট, বাঁ দিক থেকে ডানদিকে প্রশংসনীয় পাঠযোগ্য.
ব্যবহারকারীদের তালিকা আপডেট করুন, Pfoho যাও ক্ষেত্র নামক ঘর সেট
যেখানে ব্যবহারকারীর আইডি হল 1.
বা এমন কি হতে পারে যেখানে ইমেল = 'malan@harvard.edu'.
তাই দীর্ঘ স্বতন্ত্র চিহ্নিত সম্পর্কে যে, যে হিসাবে কাজ করবে.
কিন্তু ভুলে যাও উচ্চতর পারফরম্যান্স হতে থাকে, তাই কিছু না যে.
চলুন যান ক্লিক করুন. ঠিক আছে, lecture.users বিদ্যমান নেই. আমার ত্রুটি কি?
টেবিল আসলে এখানে বলা কি?
এটা ছাত্র নামক মাত্র কারণ যে কি আমরা কি উপরের বাম এখানে আপ এর.
এটা ছাত্র ব্যবহারকারীরা, না বলা হচ্ছে. তাই এখন যান ক্লিক করুন.
1 সারি প্রভাবিত. প্রশ্নের 0.01 যাও নেন.
আমি যদি এখন, ব্রাউজ Pfoho মধ্যে এখন Malan জীবন ক্লিক করুন.
যাতে এর এসকিউএল অন্য স্বাদ, কিন্তু pset যে একটি বিট আরো করতে পারবেন হবে.
>> একটি মূঢ় সিদ্ধান্ত আমি ইতিমধ্যে এখানে তৈরি করা আছে.
আমি যে এই ডাটাবেস ডিজাইন হয় অদক্ষ তর্ক করবে
কারণ আরো মানুষ আমি ছাত্র টেবিল যুক্ত,
আমাদের আরো আমি শুরু যোগ টিএফএস আমি শুরু যোগ করার আরো,,
আমরা এই টেবিলের কি redundancies দেখতে শুরু যাচ্ছেন?
>> হাঁ. [ছাত্রদের] দেখছেন যে এটা ছাত্র আছে, আমরা একই ব্যবহার করছেন [শ্রবণাতীত]
একই - ঠিক আছে, ঠিক.
তাই আপনি যদি 400 জনের মাথের বাস, বা দিতে নিতে,
ঘটনাক্রমে এই টেবিলের 400 সারি যে "মাথের," "মাথের বলে, হবে"
"মাথের," "মাথের," "মাথের."
আমরা এই বাইট সমস্ত নাশক, এবং সেখানে আছে takeaways একটি দম্পতি.
1, ছবি কোণার কেস আছে যেখানে যদি কেউ অর্থ অনেকটা বহন করেনা
এবং renames মাথের, আমরা এখন আমাদের পুরো ডাটাবেস টেবিল পরিবর্তন আছে.
যে প্রায়ই ঘটতে, যাচ্ছে না যদিও একবার Pfoho বলা হয়েছিল উত্তর হাউস 15 বছর আগে,
তাই এটা. কিন্তু যে সমস্ত যে বাধ্যকারী না.
একটি বাল্ক মধ্যে তথ্য আপডেট করা প্রয়োজন যে ভালো কোণ ক্ষেত্রে বেশী বাধ্যকারী
একটি ডাটাবেসের জন্য কেন হয় আপনি মাথের সংরক্ষণকারী আবার এবং আবার এবং আবার এবং আবার?
এটা অক্ষর, 6 অক্ষর অনেক.
আমরা বিশেষত Pforzheimer তুলনায় আরও ভাল, না করতে পারেন?
নিশ্চয় আমরা যে অনেক অক্ষরের চেয়ে ভাল করতে পারেন.
কেন শুধু একটি প্রতিটি ঘর সঙ্গে অনন্য শনাক্তকারী সংযুক্ত না
এবং প্রত্যেক ব্যবহারকারীর জন্য দোকান যে? তাই আসুন এই চেষ্টা.
বরং শুধুমাত্র ছাত্র সারণি ব্যবহার করুন, আমাকে আমার বক্তৃতা ডাটাবেস পর্যন্ত যেতে উপরের বাম আপ এখানে.
এখানে উল্লেখ্য, এটি টেবিল তৈরি করুন.
আমাকে একটা নতুন টেবিল বলা ঘর নির্মাণ.
কলাম সংখ্যা 2 হবে. লিখুন.
এখন আমি 2 ক্ষেত্র আছে.
আমি এই নামের কল যাচ্ছে, এবং করছি এটি একটি varchar দৈর্ঘ্য 255 হতে যাচ্ছে,
>> কিন্তু যে বেশ নির্বিচারে. আমাকে এই ডাউন এখানে দ্বারা প্রচল করা.
সুতরাং একটি আইডি আপ এখানে রাখুন. যাক এর একটি অনন্য শনাক্তকারী দিতে প্রত্যেক বাড়িতে.
যাক এর একটি নাম দিন প্রত্যেক বাড়িতে.
এর নির্দিষ্ট যে শনাক্তকারী ঠিক কনভেনশন দ্বারা হতে স্বাক্ষরবিহীন শুধুমাত্র ইতিবাচক সংখ্যা প্রয়োগ করা হবে.
চলুন এগিয়ে যান এবং এখন এই জন্য একটি স্বয়ং - বর্ধন ক্ষেত্রের দিতে.
এবং আমরা কোন কিছু জানার প্রয়োজন?
চলুন এগিয়ে যান এবং সংরক্ষণ করুন ক্লিক করুন.
এখন আমি দ্বিতীয় একটি টেবিল আছে.
উল্লেখ্য, এই একটি সরাইয়া হিসাবে সামান্য রহস্যপূর্ণ SQL কমান্ড
যে আপনি নিজে টাইপ করে যদি একটি phpMyAdmin ব্যবহার করে ভালো প্রশাসনিক হাতিয়ার না করে থাকতে পারে.
তাই অন্য কোনো কারণে আমরা এটি ব্যবহার করার জন্য.
এটা pedagogically এর wonderfully দরকারী সাজানোর কারণ আপনি চারপাশে ক্লিক করতে পারেন
এবং জিনিসটা কিভাবে যে মাত্র কপি এবং পেস্ট phpMyAdmin কি কি কাজ করে.
কিন্তু তৈরি টেবিল কমান্ড কি ঠিক ছিল মৃত্যুদন্ড কার্যকর করা, এবং এখানে আমার টেবিল.
আমাকে এখন এগিয়ে যান এবং সন্নিবেশ ট্যাবে ক্লিক করে কাঁচা এসকিউএল বদলে ব্যবহার অতিসরল করে তোলা.
আমাকে ঘরের মধ্যে ঢোকান না,
এবং আমি ঘর নামের মধ্যে 'মাথের' একটি মান আছে যাচ্ছে বলে যাচ্ছি.
এটা এটি. এই সিন্টেক্স হল একটি সামান্য আরো রহস্যপূর্ণ.
এই ক্ষেত্র আমরা প্রবেশ করাতে চান তার নাম.
এগুলি মান আমরা যারা ক্ষেত্রগুলির মধ্যে সন্নিবেশ করতে চান. আমাকে যান ক্লিক করুন.
1 সারি সন্নিবিষ্ট 0.02 যাও নেন. আমাকে এখন ব্রাউজ ক্লিক করুন.
>> যদি আমি ব্রাউজ ক্লিক করুন উল্লেখ্য, মাথের, যার আইডি স্বয়ংক্রিয়তা দ্বারা 1 নম্বর আছে.
আমাকে অন্য এক না. আমাকে এসকিউএল ট্যাব ঢোকা.
ঘরের মধ্যে ঢোকান. ঘর নামের Pfoho একটি মান আছে যাচ্ছে এবং তাই ঘোষণা করা হয়.
যান. এবং আমি এই কাজ আবার এবং আবার এবং আবার রাখতে পারেন.
অথবা যদি আপনি phpMyAdmin ব্যবহার করে উদাস করতে, আপনাকে শুধু সন্নিবেশ ট্যাব ব্যবহার করতে পারেন
এবং কাঁচা SQL টাইপ না.
উদাহরণস্বরূপ, আপনি শুধুমাত্র এটি টাইপ করে এক্ষুনি আউট করতে পারেন আরো দ্রুত,, চর্মার, লিখুন,
এবং এখন যদি আমরা ব্রাউজ ক্লিক করুন, এর সঙ্গে একটি আইডি আছে 3 চর্মার.
তাই এই কি আমরা স্বয়ং বৃদ্ধি দ্বারা অর্থ.
কিন্তু এখন আমরা ছাত্র কিছু ঠিক করা আছে.
ইন ছাত্র এখন কি ঘর ক্ষেত্রের তথ্য টাইপ করা উচিত?
এটা কোন int, ডান হতে হবে?
তাই এখানে লক্ষ্য আউট বিবেচনার হয়, অন্যথায় স্বাভাবিক হিসাবে পরিচিত, সারণী
যাতে আমরা তথ্য আমার টেবিলের কোনো না redundantly সঞ্চয়.
এবং আবার, পাথ আমরা এখানে ছিল যাও মাথের, মাথের বলতে হবে,
মাথের, মাথের, Pfoho, Pfoho, Pfoho, Pfoho, যা খুবই অপ্রয়োজনীয়
এর মধ্যে অক্ষর wastefulness শর্তাবলী.
সুতরাং সম্পর্কে এগিয়ে যান এবং ক্লিক গঠন দ্বারা এই পরিবর্তন যাক,
সম্পর্কে এবং এগিয়ে যান এবং ক্ষেত্র ঘর চেক নির্গমনপথ, পরিবর্তন এ ক্লিক করুন,
এবং এখন আমি এই একটি int-এ পরিবর্তন করা যাচ্ছে না.
255 আর প্রাসঙ্গিক.
আমাকে এগিয়ে যান এবং যে সূক্ষ্ম যদি এটি এখনও শূন্য বলে. সংরক্ষণ করুন.
এখন সফলভাবে টেবিল ছাত্র রদবদল করা হয়েছে,
এবং আবার বিজ্ঞপ্তি বাড়িটিও কোন int.
একটি সরাইয়া হিসাবে, বন্ধনী সংখ্যা যখন এটি ints আসে উপেক্ষা.
>> এই পুরানো কারণে হয়.
পিছনে দিন যখন আপনি GUIs আছে না করে থাকেন, তাহলে এর পরিবর্তে আপনি একটি কমান্ড লাইন পরিবেশ ছিল,
10 এবং 11 যথাক্রমে নির্দিষ্ট কতগুলি অক্ষর আপনি দেখাতে হবে
টার্মিনাল উইন্ডোর মধ্যে আসলে ক্ষেত্র প্রদর্শন.
এটা প্রকৃত ক্ষেত্র বিট দৈর্ঘ্যের সঙ্গে না আছে, তাই আমরা ঠিক এখন জন্য যে উপেক্ষা করব.
এখন আমি এই টেবিলের মধ্যে যেতে হবে.
এবং যদি ডেভিড মাথের মধ্যে বসবাস করেন, হাউস 0 উচিত নয়,
যা ডিফল্ট int মান NULL closest.
তিনি বাড়িতে 1 থাকা উচিৎ.
চলুন শুরু করা যাক ইচ্ছামত যে Pfoho মাইক জীবন, তাই ঘর সংখ্যা 2.
এখন আমার টেবিল দেখায় একটু আরো রহস্যপূর্ণ.
কিন্তু দক্ষতা বিবেচনা.
আমি এখন করছি শুধুমাত্র 32 বিট ব্যবহার করে বাড়ি সনাক্ত করা,
যার মানে শুধুমাত্র 1 আমার বাড়ির মাথের এবং Pfoho ক্যানোনিকাল সংজ্ঞা আছে
এবং যে ঘর টেবিল আছে.
তাই আমি যদি এখন এই সমস্ত টেবিলের পুনরায় যুক্ত করতে চান তা এই ভাবে, মনে হয়.
এখানে আমি আমার ছাত্র টেবিল খালি আছে, এবং ডান দিকে এই সংখ্যা, 1 এবং 2 আছে.
1 মাথের, 2 Pfoho.
আমরা যারা এই অন্যান্য টেবিল একই সংখ্যা, যা ঘর বলা হয় আছে,
1 এবং 2 3 যারা ঘরের জন্য এবং 3.
আমরা এখন কি করতে চান কোড মধ্যে ক্ষমতা, পিএইচপি এবং এসকিউএল আছে,
এর বাছাই এইসব সারণী, উত্তরে বলা যেখানে যদি এই হয় ছাত্র এবং এই ঘর,
আমরা একরকম তাদের সঙ্গে মেশা 1 যাতে 1 লাইন আপ করতে চান,
সঙ্গে 2 2 লাইন আপ, এবং যাতে আমরা যেখানে ডেভিড চিন্তা করতে পারেন
এবং যেখানে যেখানে মাইক এবং বাকিদের জীবন.
এই কাজের জন্য আমরা নিচের মত একটি SQL কোয়েরি নির্বাহ করতে পারেন.
ছাত্রদের উপর ঘর থেকে যোগ দিন * SELECT -
এবং এখন আমরা কি ক্ষেত্র যোগ দিতে চান?
সুতরাং students.house = houses.id.
>> একটু রহস্যপূর্ণ, কিন্তু এই অংশ আক্ষরিক অর্থ হল একটি নতুন অস্থায়ী টেবিল তৈরি
যে ছাত্র এবং ঘর যোগদান ফলাফল.
এবং কিভাবে আপনি এখানে আমার আঙ্গুলের মধ্যে টিপস একত্রিত করতে চান?
ছাত্র 'ক্ষেত্রের সমান ঘর ঘর যাও' আইডি ক্ষেত্র নির্ধারণ করুন.
এবং আমি যদি এখন যান ক্লিক করুন, আমি ফিরে পেতে ঠিক কি আমি আশা.
ডেভিড মাথের হয়, মাইক Pfoho হয়, এবং আমি এও অনন্য আইডিন্টিফায়ারগুলির দেখুন.
কিন্তু বিন্দু এখন আমি একটি সম্পূর্ণ টেবিল আছে.
এবং তাই pset 7 জন্য এখানে takeaway বা সত্যিই চূড়ান্ত প্রকল্পের জন্য:
যদি জানতে পারেন যে আপনি কোন তথ্য সংরক্ষণ টুকরা redundantly করছি,
এটি একটি ঘর হয়তো, এটা একটা শহর, রাজ্য, এবং জিপ
যেখানে সবসময় জিপ সাধারণতঃ না কিন্তু একটি স্বতন্ত্র আইডেন্টিফায়ার হিসেবে ব্যবহার করা যায়,
ব্যায়াম দিয়ে যেতে phpMyAdmin ভালো কিছু মানসিক এবং পরে না
যে সাধারণ তথ্য আউট ফ্যাক্টরিং কারণ হিসাবে বিশেষ করে আপনার ওয়েবসাইট পায় আরো ভাল ব্যবহৃত
এবং আরো জনপ্রিয়, এটা কিভাবে নিশ্চিত যে সব সুপার ফাস্ট,
দ্বারা যাও স্বতন্ত্রতা হিসাবে অনেক সম্ভাব্য হিসাবে ইঙ্গিত হিসাবে ডাটাবেস প্রদান.
যে ছিল অনেক.
কোন প্রশ্ন? ঠিক আছে. চলুন একটা 5 মিনিটের বিরতি নিতে এবং সংঘবদ্ধ করা.
ঠিক আছে.
নিম্নলিখিত উদাহরণ যে কিছু বছর আগে যখন আমি CS161 ব্যবহৃত হয়েছিল,
যা অপারেটিং সিস্টেম কলেজে বর্গ
যা হচ্ছে আশ্চর্যজনক জন্য কিন্তু পরিচিত একটি কাজের ছবি পরিমাণ হয়,
এবং এটি নিম্নস্তরের সমস্যা অপারেটিং সিস্টেমে যে উঠা কিছু সত্যিই গুরুত্ত্ব দেয়
এবং এছাড়াও এমনকি উপাত্ত বিশ্বের.
>> বিবরণ যে আমার অধ্যাপক, Margo সেল্টসার, যে বছর বলা ছিল হিসাবে অনুসরণ করে.
ধরুন যে আপনি একটু আপনি এবং আপনার জন্য একই ঘরে বাসিন্দা dorm রেফ্রিজারেটর আছে
এবং সত্যিই আপনি দুটি দুধ চাই.
সুতরাং আপনি বর্গ একদিন বাড়ি থেকে আসা, আপনার একই ঘরে বাসিন্দা এখনও আছে,
আপনি রেফ্রিজারেটর খুলুন, এবং আপনি বুঝতে, "ওহ অভিশাপ, আমরা দুধ ফুরিয়েছে."
সুতরাং আপনি রেফ্রিজারেটর বন্ধ, আপনি রাস্তা জুড়ে পদব্রজে ভ্রমণ CVS যাও
ক্রমবর্ধমান দীর্ঘ লাইনে এবং CVS এ কিছু দুধ কিনতে পাবেন.
এদিকে, আপনার একই ঘরে বাসিন্দা তার বা তার বর্গ থেকে বাড়িতে আসে,
রুম মধ্যে আসে, প্রর্দশিত রেফ্রিজারেটর সত্যিই কিছু দুধ অনুপস্থিত,
রেফ্রিজারেটর প্রর্দশিত হবে এবং, "অভিশাপ, কোন দুধ."
তাই সে প্রচেষ্টা রেফ্রিজারেটর, পদচারনা দরজা আউট, এবং ABP যায়
কোথাও বা CVS যেখানে আপনি অপরের মধ্যে আচমকা যাও চলুন না তুলনায় অন্যান্য
কিছু দুধ পেতে যান.
অবশ্য কয়েক মিনিট পরে, আপনার উভয় পেতে ফিরে হোম
এবং এখন আপনি দুইবার যতটা দুধ হিসাবে আসলে আপনি যেমনটি আছে.
এবং এখন হচ্ছে দুধ, এটি খারাপ যেতে যাচ্ছে না, কারণ আপনি দুধ পছন্দ এর
কিন্তু আপনি কি দুধ ভালো, সত্যিই তাই না এখন আপনি খুব দুধ আছে, তাই এটা চুকা যাচ্ছে.
এটি একটি ভয়ঙ্কর, ভয়ঙ্কর অবস্থা.
যদি আপনি প্রথম একই ঘরে বাসিন্দা বাসা কি এই মীমাংসিত বিধেয় থাকতে পারে? হ্যাঁ.
[ছাত্রদের] আপনি একটি নোট চলে উচিত. [হাস্য]
গুড. আপনি একটি নোট চলে উচিত.
আপনি বলছেন, একটা পোস্ট এটা নোট বা করা উচিত "দুধ জন্য Gone,"
এবং তারপর আপনার ধারণার দিক থেকে একই ঘরে বাসিন্দা গিয়েছিল আসলে যে করছেন লক আউট.
অথবা আপনি আরও 1 ধাপে যেতে পারে.
আপনি আক্ষরিক কুলুপ কিছু দিয়ে ফ্রিজ লক করতে পারে,
এবং এখন আক্ষরিক আপনার একই ঘরে বাসিন্দা করা রেফ্রিজারেটর লক আউট.
যদি আমরা ফিরে যাও প্রোগ্রামিং বিশ্বজনীন করা,
আপনি প্রায় রেফ্রিজারেটর পরিবর্তনশীল কিছু অথবা একটি struct হিসাবে মনে করতে পারেন,
তথ্যের জন্য ধারক কিছু.
সমস্যা এখানে মৌলিকভাবে যে আপনি উভয় যাও পরিদর্শন করা অনুমোদিত হয়েছে
অথবা এই তথ্য কাঠামো রাষ্ট্র পড়া,
কিন্তু আপনি বিভিন্ন সময়ে দেখা যাবে এবং এটি এখনো আপনাদের উভয়ের একটি সিদ্ধান্ত
ঐ সময় বিভিন্ন মুহূর্ত সময়ে বিশ্বের রাষ্ট্র উপর ভিত্তি করে.
সুতরাং আপনি ফ্রিজ লক করে, আপনি অন্তত আপনার একই ঘরে বাসিন্দা হবে অপবারিত
থেকে বিশ্বের রাষ্ট্র পরিদর্শন করা সক্ষম হয়ে যাবার,
তাই সে একই সিদ্ধান্ত করতে পারে না.
উপাত্ত, তাই হিসাবে এটি সক্রিয় আউট, ক্রমাগত এই সমস্যা আছে.
>> চলুন আমরা যদি একটি দৃশ্যকল্প গড়া দেখতে পারেন.
আপনি একজন খারাপ লোক বাছাই করা ধরুন এবং আপনি ব্যাঙ্ক অফ আমেরিকা যান
বর্গক্ষেত্র অন্যান্য জায়গা যে একটি পার্শ্ব দ্বারা দম্পতি এটিএম সাইড আছে বা এক,
এবং একরকম আপনি মূর্তিযুক্ত আউট কিভাবে একটি এটিএম কার্ড প্রতিলিপি - যে সমস্ত হার্ড না.
এটি শুধু একটি চৌম্বক ফালা.
তাই আপনি কি কি করতে চেষ্টা করতে হয় এই গেমটি খেলতে
যেখানে আপনি 1 টি মেশিনের মধ্যে 1 কার্ড করা, অন্য মেশিনে আরেকটি কার্ড,
এবং আপনি অপরিহার্যরূপে একযোগে টাকা তুলতে চেষ্টা করতে চান,
কারণ কল্পনা করা যে বিবরণ নিম্নরূপ যায়.
বাম মেশিন আপনার কার্ড এবং আপনার PIN লাগে,
এবং তারপর আপনি বলে, "সম্পর্কে $ 100 দিন."
এটিএম প্রথমে তার নিজস্ব ডাটাবেসের মধ্যে অথবা সমতূল্য একটি প্রোগ্রাম নির্বাচন না করা হয় -
যাই হোক না কেন এর ডাটাবেস ব্যবহার করে এটা - দেখতে এই ব্যবহারকারীর জন্য তার একাউন্টে কমপক্ষে 100 $ আছে?
যদি তাই হয় তাহলে, $ 100 থুতু আউট এবং তাদের ব্যালেন্স থেকে $ 100 বিয়োগ করা.
তবে অবশ্যই যদি এখানে একাধিক মেশিনে বা পরিদর্শনের একাধিক উপায়
বিশ্বের রাষ্ট্র, ব্যাংক খিলান, কত টাকা আছে আপনি দেখুন,
বাম মেশিনের সম্ভাবনা দ্বারা যে শুধু অনুমান এবং অধিকার
উভয় সময় প্রায় একই মুহূর্তে যে প্রশ্ন জিজ্ঞাসা করুন.
>> এবং অবশ্যই এই ঘটতে পারে. এটিএম হয় কম্পিউটারের এই দিন.
তাই আপনি যদি বাম মেশিন বলে, "হ্যাঁ, আপনি অন্তত $ 100 আছে,"
ইতিমধ্যে ডান মেশিন বলে, "হ্যাঁ, আপনি অন্তত $ 100 আছে,"
তারপর তাদের উভয় তাদের প্রোগ্রাম এবং শেষ এগিয়ে আসলে $ 100 থুতু আউট
এবং বলবে ". পূর্বে আপনাকে $ 200 ছিল"
"আমার একাউন্টে $ 100 এখন আদৌ পরিবর্তনশীল আপডেট করা যাক."
কিন্তু যদি দুইটাই আপনার অ্যাকাউন্ট ব্যালেন্স চেক করা আছে এবং এটি পাওয়া যে এর $ 200
100, - এবং তারপর তাদের উভয় গণিত এবং 200 বলে
সম্ভাব্য মেশিন আছে প্রতিটি মেশিনের মধ্যে থুতু দুই $ 100 বিল আউট,
কিন্তু তারা শুধুমাত্র আপনার সমষ্টি অ্যাকাউন্ট ব্যালেন্স করেছি $ 100 হতে আপডেট.
অন্য কথায়, আপনি $ 200 নিয়ে যাওয়া, করেছি কিন্তু কারণ তারা বিশ্বের রাষ্ট্র পরিদর্শন
একযোগে এবং তারপর একটি সিদ্ধান্ত যে মান উপর ভিত্তি করে তৈরি করা,
পরিণামে তারা গণিত সঠিকভাবে কাজ করতে পারে.
তাই খুব একটা ব্যাংক অবস্থায় আপনি তালাবন্দী কোন না কোন রকমের সত্যিই চান
যাতে যত তাড়াতাড়ি আপনি কিছু ভেরিয়েবলের রাষ্ট্র চেক করেছি
যে আপনার অ্যাকাউন্ট ব্যালেন্স মত সত্যিই গুরুত্বপূর্ণ,,
না অন্য কেউ যে এর উপর ভিত্তি করে সিদ্ধান্ত না হওয়া পর্যন্ত আপনি আপনার জিনিস কাজ সম্পন্ন করা হয় না,
যেখানে আপনি এই ক্ষেত্রে বাম এটিএম.
বাকিদের লক আউট.
আপনি আসলে বিভিন্ন উপায়ে একটি দম্পতি এই প্রভাব অর্জন করতে পারেন.
>> মাইএসকিউএল মধ্যে সবচেয়ে সহজ উপায় হল এসকিউএল একটি লাইন যে আমরা আপনার দেওয়া
সমস্যা সেট স্পেসিফিকেশন ঠিক ভালো যে দেখায়.
যাহা বলা এর - - একটি আইডি, একটি প্রতীক, এবং একটি ভাগ, শেয়ারের একটি নম্বর, টেবিলের মধ্যে ঢোকান
নিম্নলিখিত মানের, উদাহরণস্বরূপ.
এখনো যদি আপনি পঠিত বৈশিষ্ট না, এই একটি উদাহরণ জড়িত তা আপনি কীভাবে সম্পর্কে যান
রাষ্ট্রপতি Skroob জন্য এই টাকা স্টক 10 শেয়ার কেনার,
যার ইউজার আইডি নম্বর 7 করা হয়?
এই বলে টেবিলের নিম্নলিখিত আইডি, প্রতীক, এবং শেয়ারের মধ্যে নম্বর ঢোকান
7, 'DVN.V', এবং 10.
কিন্তু - কিন্তু, কিন্তু, কিন্তু - দ্বিতীয় লাইনটি গুরুত্বপূর্ণ এক.
অন ​​সদৃশ KEY আপডেট শেয়ার = শেয়ার + মান (শেয়ার).
তাই সম্পূর্ণভাবে প্রথম নজরে রহস্যপূর্ণ-খুঁজছি.
কিন্তু এটা সত্য যে এই SQL কোয়েরি, যদিও এটি 2 লাইন সম্মুখের গোপন করে,
1 টি দীর্ঘ কোয়েরি, এটি অর্থ এটি আনবিক
এ অনুভূতি যে হয় এই প্রশ্নের সাথে সব একসঙ্গে বা না মৃত্যুদন্ড কার্যকর করা হবে এ সব হবে.
এবং মাইএসকিউএল সংজ্ঞা দ্বারা, যে কিভাবে তারা এই প্রশ্নের সাথে বাস্তবায়িত হয়নি.
এটি ম্যানুয়াল সকল চালানো সব একবারে বা না নিশ্চিত মধ্যে সংজ্ঞা হয়.
এই জন্য প্রেরণার হিসাবে অনুসরণ করে.
যদি এই ক্ষেত্রে আপনি স্টক 10 শেয়ার কেনার চেষ্টা করছেন,
এটা দুধ হিসাবে একই ধরণের বিবরণ, এটা এটিএম হিসাবে বিবরণ একই ধরনের.
>> যদি আপনি ভুল ব্যবহার করে এই বাক্য গঠন না
কিন্তু ডাটাবেস থেকে নির্বাচনের পরিবর্তে এই টাকা স্টক যত শেয়ার দেখুন
কিন্তু প্রেসিডেন্ট Skroob, আছে এবং অনুমান তিনি 10 শেয়ার আছে,
এবং তারপর কিছু বিভক্ত দ্বিতীয় পরে তারপর আপনি একটি বিবৃতি আপডেট করবেন,
যা এসকিউএল স্টেটমেন্ট অন্য যে এগিয়ে যান এবং 10 আরো শেয়ার যোগ করুন
তার বর্তমান 10 নিয়মাবলী যাতে মোট 20,
সমস্যার কারণ আজকের এর ডাটাবেস সিস্টেম এবং কারণ আজ এর কম্পিউটার
আপনি একাধিক প্রসেসর, একাধিক কোর আছে -
অন্য কথায়, আক্ষরিক কম্পিউটার করা যাবে একযোগে একাধিক জিনিসগুলি -
কোন গ্যারান্টি আছে যে আপনার নির্বাচন করুন এবং এই ক্ষেত্রে আপনার আপডেট
ফিরে যাও ব্যাক ঘটতে যাচ্ছে.
তাই একটা দৃশ্যকল্প খারাপ হবে কি নির্বাচন করুন
কতজন এই টাকা শেয়ার Skroob আছে দেখুন,
এবং তারপর সুযোগ দ্বারা শুধু আরেকটি ডাটাবেস কোয়েরিটি বাস্তবায়ন করা হয় -
হয়তো অন্য ব্রাউজার উইন্ডোতে তার Skroob যাও 10 শেয়ার কেনার চেষ্টা
অন্য একটি উইন্ডোতে পুরাপুরি, অনেক ভালো এটিএম -
এবং অনুমান যে অন্য কোয়েরি মধ্যে নির্বাচন করে Update মধ্যে পায়.
এই ক্ষেত্রে যে এখন Skroob হারায় শেয়ারের কিছু সংখ্যা হতে পারে
কারণ অন্য প্রসেস তার বিশ্বের রাষ্ট্র কার্যদর্শী হয়,
অথবা তিনি আরো শেয়ার তুলনায় তিনি থাকা উচিত পায়.
আমরা ঠিক কি যারা নির্দিষ্ট বিবরণ লাইন হবে বিবরণ মধ্যে যেতে হবে না,
কিন্তু বিন্দু হয় যদি আপনি একটি ভেরিয়েবলের মান পরীক্ষা করুন এবং তারপর একটা সিদ্ধান্ত নেওয়া আছে,
যদি কারোর মধ্যে যারা 2 বিবৃতির কিছু করার একটি ঝুঁকি আছে,
হিসাবে মাল্টি সিস্টেম, সিস্টেম multicore মধ্যে ঘটতে পারে,
ক্ষমতা এখন একযোগে একাধিক জিনিষ না কম্পিউটার, খারাপ ব্যাপার ঘটতে পারে
ভালো ব্যাংক অ্যাকাউন্ট ভুল debited, দুইবার যতটা দুধ কেনা হচ্ছে,
অথবা এই ক্ষেত্রে শেয়ারের ভুল নম্বর.
কিন্তু একটি সহজ উপায় এই বিষয়ে চিন্তা আছে.
>> এটি সক্রিয় যে এছাড়াও এসকিউএল সমর্থন করে, যদি আপনি সঠিকভাবে আপনার টেবিল কনফিগার,
কিছু বলা লেনদেন, যা আমি তর্ক করে আসলে আরও সহজ বুঝতে
তুলনায় এই, কিন্তু এটা, তাই একটি 1 অধি না এটা আসলে একটি বিট আরো জড়িত.
হয় আক্ষরিক পর্যন্ত এসকিউএল মধ্যে একটি বিবৃতি বলা START লেনদেন.
ঠিক, নির্বাচন করে Update, ঢোকান, মুছতে, এবং যোগ আছে এবং অন্যদের একটি গুচ্ছ,
START লেনদেন ভালো কীওয়ার্ড আছে.
আপনি কি এবং তারপর pset 7 পরিপ্রেক্ষিতে না -
আপনি pset 7 জন্য এই করবেন না; এটি প্রয়োজন নেই হিসাবে স্পষ্টভাবে এর disclaimed,
কিন্তু চূড়ান্ত প্রকল্পের জন্য এটি দরকারী হতে পারে -
যদি আপনি এর START লেনদেনের একটি নথি প্রশ্নের সাথে মিলেছে এবং তারপর আরেকটি প্রশ্নের সাথে কল
এবং তারপর আরেকটি প্রশ্নের সাথে এবং তারপর অন্য, অন্য, এবং অন্য,
যারা কোয়েরি আসলে সঞ্চালিত হবে না যতক্ষণ না আপনি কল SQL স্টেটমেন্ট কমিট,
যা সময়ে, এটি 2 বিবৃতি বা 20 বিবৃতি, সব তারা একযোগে মৃত্যুদন্ড কার্যকর করা হবে,
যার অর্থ কোন কেউ ঘটনাক্রমে অত্যধিক দুধ বা ডেবিট অত্যধিক টাকা কিনতে পারে
অথবা অনেকগুলি শেয়ার কারণ আপনার প্রশ্ন সব চালানো হবে কিনতে
ফিরে যাও যাও যাও ব্যাক ব্যাক ব্যাক.
এবং এই সুপার গুরুত্বপূর্ণ, বিশেষ করে যখন আপনি ভালো কিছু করছেন.
এটি একটি ইচ্ছামাফিক উদাহরণস্বরূপ বলা let এর ব্যাংক অ্যাকাউন্ট আপডেট
দ্বারা একটি ভারসাম্য সমান ভারসাম্য সেটিং - $ 1000 যেখানে অ্যাকাউন্ট নম্বর হল 2.
এবং তারপর এখন দ্বিতীয় বিবৃতি এর যে $ 1000 জমা না দেওয়া
মধ্যে অন্য কারো ব্যাংক অ্যাকাউন্ট যার অ্যাকাউন্ট সংখ্যা হল 1.
>> অন্য কথায়, এই একটি যেখানে আপনি নিশ্চিত করতে চান নিখুঁত উদাহরণ
যে এই বিবৃতির উভয় সব সময়ে ঘটতে হবে না
কারণ অন্যথায় গ্রাহক পেতে মাতাল যাচ্ছে
এবং আপনি তাদের টাকা নিয়ে অন্যত্র জমা না যাচ্ছেন,
অথবা ব্যাংক পেতে মাতাল যাব যেখানে আপনার টাকা জমা চলুন না
কিন্তু এর ব্যবহারকারী অ্যাকাউন্ট থেকে প্রকৃতপক্ষে এটি না বিয়োগ করা.
সুতরাং আপনি দুইটাই একসাথে চালানো চাই.
বিশ্বের লেনদেনের মধ্যে সুতরাং পদার্পন.
সুতরাং যা কিছু আপনার মন ফিরে রাখতে,
এত শুধু একটি চূড়ান্ত প্রকল্পের কাজের জন্য না,
কিন্তু আপনি যদি কোথাও আপনার চূড়ান্ত প্রকল্প নিতে চান,
যদি আপনি তা কাছাকাছি কিছু কোম্পানী শুরু আপ করতে চান,
যদি আপনি ক্যাম্পাস কিছু ছাত্র গ্রুপ এর সমস্যা সমাধান করতে চান
এবং প্রকৃতপক্ষে একটি লাইভ, সক্রিয় ওয়েবসাইট আছে, এই নিগূঢ় বাগ উঠা পারে সাজান
যদি আপনি মনে মাধ্যমে পুরোপুরি না কি ঘটতে পারে যদি 2 জনের
হয় আক্ষরিক সময় একই মুহূর্তে আপনার ওয়েবসাইট অ্যাক্সেস করার চেষ্টা,
তদ্দ্বারা অন্যথায় তাদের কোয়েরি পেতে পারে খচিত.
>> কিছু জাভাস্ক্রিপ্ট, উহার একটি টিজার জন্য প্রস্তুত?
এটি আমাদের জন্য গত সেমিস্টারে ভাষা. ঠিক আছে.
সৌভাগ্যক্রমে, জাভাস্ক্রিপ্ট দেখায় খুব খুব,, 2 ভাষায়, সি এবং পিএইচপি অনুরূপ,
আমরা এ পর্যন্ত সম্পন্ন করেছি.
Pset 7 কোন জাভাস্ক্রিপ্ট আছে, কিন্তু এটা একটা অবিশ্বাস্যভাবে দরকারী টুল
যখন এটি ওয়েব ভিত্তিক প্রকল্প চূড়ান্ত করছেন বা সত্যিই শুধু ওয়েব প্রোগ্রামিং আরো সাধারণত আসে.
তাই একটা কিছু বলা DOM সংক্ষিপ্ত বিবরণ.
এখানে একটি সহজ ওয়েব পাতা সুপার যে সত্যিই বলছে হ্যালো, বিশ্ব
উভয় ক্ষেত্রে শিরোনাম এবং শরীর.
খাঁজ হিসাবে কিছু সময়ের জন্য করা হয়েছে পরামর্শ,
প্রকৃত বন্ধুই সেখানে ওয়েব পেজে অনুক্রমের.
আমি একটি ট্রি হিসাবে এই HTML একই স্নিপেট আঁকতে পারে,
ডাটা স্ট্রাকচার আমাদের সি আলোচনাগুলি ফিরে চিন্তা, হিসাবে অনুসরণ করে.
আমি কিছু বিশেষ রুট নোড নামে নথিটি নোড আছে,
এবং আমরা শুধু একটি মুহূর্ত এই জাভাস্ক্রিপ্ট মধ্যে এনালগ দেখতে পাবেন.
এই প্রথম সন্তানের ক্ষেত্রে এবং যে কেবল সন্তানের HTML ট্যাগটি.
কোন doctype সরাসরি ম্যাপিং নেই.
এটা একটি বিশেষ জিনিস, তাই আমরা ঠিক যখন এটা এই DOM আসে উপেক্ষা করা উচিত,
এই ডকুমেন্ট অবজেক্ট মডেল গাছ.
উল্লেখ্য যে HTML এর ট্যাগ, যা আমি একটি আয়তক্ষেত্র হিসাবে ফোটানো ইচ্ছামত করেছি,
মাথা এবং শরীরের: 2 সন্তান রয়েছে.
>> যারা rectangles হিসাবে একভাবে টানা হয়.
এটা pictorially অর্থপূর্ণ যে শরীরের বাম যাও প্রধান.
সংশ্লেষ হয় যে ট্রির মাথা আসে প্রথম.
সুতরাং এর আসলে সেখানে একটি গাছ একটি ক্রম যখন আপনি ভালো এটি আঁকা,
যদিও আকার এবং যাবদ্ধর হয় নির্বিচারে.
হেড ইতিমধ্যে একটি একক সন্তানের শিরোনাম বলা হয়েছে,
এবং প্রকৃতপক্ষে শিরোনাম নিজস্ব সন্তান, যা "হ্যালো, দুনিয়া" আছে,
যা আমি ইচ্ছাকৃতভাবে এখানে একটি উপবৃত্তাকার এটি সামান্য আয়তক্ষেত্র থেকে আলাদা হিসাবে সৃষ্টি হয়েছে.
এই rectangles উপাদান হল, যেহেতু হ্যালো, বিশ্বের সত্যিই একটি টেক্সট নোড.
এটা ট্রি একটি নোড, কিন্তু এটি একটি নোডের মধ্যে বিভিন্ন টাইপ
তাই আমি এটি সৃষ্টি ইচ্ছামত ভিন্নভাবে.
একইভাবে শরীরের কোনো একটি শিশু হ্যালো বলা হয়, বিশ্বের হিসাবে ভাল আছে,
তাই বিভিন্ন নোডের যদিও তারা হন কাকতালীয়ভাবে একই টেক্সট,
কিন্তু আমি এটা টানা করেছি একই আকার ব্যবহার করে. সুতরাং যারা বজায় রাখে?
ভাল, কি HTML এ সম্পর্কে চমৎকার হয় যে এটি এই হায়ারারকিকাল প্রকৃতি আছে.
কি এবং জাভাস্ক্রিপ্ট এবং বিশেষ করে লাইব্রেরি যা সহজলভ্য সম্পর্কে চমৎকার
এবং jQuery মত জনপ্রিয়, আপনি ট্রি তাই amazingly সহজ নেভিগেট করতে পারেন.
কোন উপাদান সি আমরা পয়েন্টার এবং ঢোঁড়ন গাছ সঙ্গে করেছিল এবং নোডের recursing
ডান বাম সন্তানকে শিশু, সব হঠাৎ মধ্যে আমরা সাজাতে পারেন জন্য দেওয়া গ্রহণ
হিসাবে হচ্ছে amazingly জ্ঞানময় যদি হতাশাজনক একটি বিট না
কিন্তু একটি কার্যকরী উপায় প্রোগ্রামিং সম্পর্কে যেতে. প্রায় না
তাই সঙ্গে এই উচ্চ জাভাস্ক্রিপ্ট ভালো স্তরের ভাষা
আমরা এই গাছ আরো অনেক intuitively নেভিগেট করতে পারবেন.
>> এবং প্রকৃতপক্ষে সিনট্যাক্স অতি পরিচিত হতে যাচ্ছে.
যদি আপনি আগে কখনও দেখা জাভাস্ক্রিপ্ট করেছি, এই একটি সত্যিই সুন্দর রেফারেন্স
মোজিলা থেকে লোকেরা, যারা ফায়ারফক্স করা,
তাই আপনার সুবিধার্থে এ যে ব্রাউজ বিনামূল্যে বোধ.
এবং এই স্লাইডগুলি এক ও অভিন্ন কি আমরা ব্যবহৃত অন্যান্য দিন - কি আপনি খুঁজে পাবেন -
একইভাবে, প্রধান সর্বস্বান্ত হয়.
সুতরাং যখন আপনি জাভাস্ক্রিপ্ট একটি প্রোগ্রাম লিখতে, কোন প্রধান ফাংশন আছে.
আপনি শুধুমাত্র কোড লেখা শুরু.
কিন্তু একটি জাভাস্ক্রিপ্ট এবং C এবং পিএইচপি মধ্যে কী পার্থক্য
যে যেহেতু C এবং পিএইচপি পর্যন্ত হয়েছে সার্ভার প্রান্তের মৃত্যুদন্ড কার্যকর
এই ক্ষেত্রে প্রয়োগ বা আরো সাধারণভাবে দ্বারা একটি সার্ভার,
নকশা দ্বারা জাভাস্ক্রিপ্ট একটি ব্রাউজার দ্বারা সাধারণত মৃত্যুদন্ড কার্যকর করা হয়.
অন্য কথায়, আপনি জাভাস্ক্রিপ্ট কোড লিখতে পারে হিসাবে আমরা সম্পর্কে যাও,
উপর প্রয়োগ সার্ভারের মধ্যে একটি, কিন্তু আপনি কি আপনার HTML মধ্যে এটি অন্তর্ভুক্ত করুন আপনার CSS এর মধ্যে,,
আপনার এবং আপনার মধ্যে gifs PNGs এবং আপনার JPEGs
যাতে ইউজার যখন আপনার ওয়েব পাতা পরিদর্শন, আপনি যদি জাভাস্ক্রিপ্ট ব্যবহার করছেন,
যে সার্ভার থেকে ব্রাউজারের জাভাস্ক্রিপ্ট কোড আসে,
এবং এটা ব্রাউজার যা প্রকৃতপক্ষে এটি করুন.
তাই এই এমনকি মেধা সম্পত্তি জন্য অর্থপূর্ণ বিষয় রয়েছে.
এটি নিরীহ ধরনের এমনকি আপনার IP রক্ষা করার বিষয়ে মনে যখন এটি জাভাস্ক্রিপ্ট কোড আসে
কারণ ভাষা প্রকৃতি দ্বারা এটি ব্রাউজার পার্শ্ব সাধারণত মৃত্যুদন্ড কার্যকর করা হয়.
>> আপনি এটা বিভ্রান্ত করতে পারেন, যার মানে আপনি এটি চেহারা ছবি এবং অরুপ করতে পারেন
কোন হোয়াইটস্পেস, ভয়ঙ্কর পরিবর্তনশীল নাম, এটা কঠিন লোকেদের আপনার IP চুরি করা,
কিন্তু কি যে এটি ব্রাউজার পার্শ্ব মৃত্যুদন্ড কার্যকর করা হয়.
যদিও হিসাবে একটি সরাইয়া জাভাস্ক্রিপ্ট ব্যবহার করা যাবে সার্ভার প্রান্তের,
সবচেয়ে সাধারণ ব্যবহারের ক্ষেত্রে ডান এখন ব্রাউজারে এখনও.
এবং তা এখানে মত দেখায়. এখানে একটি যদি-অন্যথায় শুধু C-এর মতো যদি-অন্যথায় শুধুমাত্র পিএইচপি মত গঠন করা,.
এখানে একটি বুলিয়ান অভিব্যক্তি যখন আপনি "অথবা" 2 জিনিসগুলি নিয়ে একসাথে.
এখানে যখন আপনি "এবং" একসঙ্গে 2 জিনিষ.
এখানে একটি সুইচ বিবৃতি, যা অনুরূপ পিএইচপি যাও
যে আপনাকে মান বিভিন্ন ধরনের প্রশ্ন ধরণে যেতে পারেন.
Loops একভাবে loops জন্য আছে এখানে, যা কি আগে আমরা দেখা করেছি অভিন্নরুপে গঠিত হয়.
যদিও loops; আমরা loops যখন করেছি কি আছে.
ভেরিয়েবল কখনো, তাই কিছুটা ভিন্ন.
আপনি ভেরিয়েবল কি ভালো আপনি পিএইচপি এবং সি কি ডিক্লেয়ার,
কিন্তু জাভাস্ক্রিপ্ট একভাবে দুর্বলচিত্ত হয় টাইপ.
আপনি int বা float অথবা পংক্তি বা যে সাধারণত মত কিছুই উল্লেখ না.
আপনি var নির্দিষ্ট করতে পারেন.
আপনি var উল্লেখ না, কিন্তু এটি বিষয় রয়েছে যদি আপনি না.
সাধারণত আপনি যদি বর্জন করা var, আপনি দূর্ঘটনাক্রমে একটি পরিবর্তে স্থানীয় বিশ্ব পরিবর্তনশীল তৈরি.
সুতরাং সম্পর্কে উত্থাপন করা যাক যে, আপনি শুধুমাত্র প্রায় সবসময় var বলতে এবং তারপর ভেরিয়েবলের নাম.
এটি একটি টাইপ না, এটা পরিবর্তনশীল জন্য শুধু var.
এই একটি উদাহরণ হতে পারে, এমনকি 123 বা "হ্যালো, দুনিয়া" হবে.
অ্যারেগুলির উপস্থিত এবং পিএইচপি যাও চিহ্নগুলি সিন্টেক্সের অনুরূপ.
আমি var সংখ্যা বলতে এবং তারপর আমি আবার বর্গাকার বন্ধনী একটি ভেরিয়েবল ডিক্লেয়ার ব্যবহার করব
যার টাইপ হল যে এই অ্যারে এটি বিশেষ করে কমা দ্বারা পৃথকীকৃত নম্বর আছে.
এবং সর্বশেষে, তাহলে এই শুধুমাত্র এক যে সত্যিই ভিন্ন দেখায়.
পুনরাহ্বান যে পিএইচপি আমরা একটি ছাত্র জন্য একটি এসসিয়েতিভ আরে করে বাস্তবায়িত
ভালো Zamyla যে ভালো, যেখানে পরিবর্তনশীল ছাত্র বলা হয় চেহারা হতে পারে.
বর্গাকার বন্ধনী মানে এখানে আসে একটি অ্যারে.
>> যে আমি সাংখ্যিক সূচক কিন্তু স্ট্রিং ব্যবহার করব না - আইডি, ঘর, এবং নাম -
এর মানে হল যে এই একটি এসসিয়েতিভ আরে,
এবং সাথে এই তীর চিহ্ন এবং কৌণিক বন্ধনী সমান
এর মানে হল যে কি হয় "আইডি", মান হল 1;
কী হয় "ঘর", মান Winthrop হাউস;
কি হল "নাম", মান Zamyla চ্যান.
তাই ভিতর এই এসসিয়েতিভ আরে, প্রতিটি যা তার নিজস্ব মান আছে 3 কি আছে.
আমরা যে pset 7, অথবা আপনি শীঘ্রই মধ্যে জাভাস্ক্রিপ্ট একই ধারণা, ইচ্ছাশক্তি দেখা করেছি
কিন্তু এটা ভালো সন্ধান করছেন.
সুতরাং var ছাত্র - কোন ডলার সাইন এবং এখনও টাইপ কোনো উল্লেখ কিন্তু var -
তারপর সমান এবং তরঙ্গায়িত ধনুর্বন্ধনী কারণ জাভাস্ক্রিপ্ট সালে যখন আপনি কী মান জোড়া খোলা আছে,
আপনাকে আসলে কিছু নামক একটি বস্তুর ব্যবহার.
এবং আপনাদের মধ্যে যারা APCS করেননি অথবা নিতে মত জাভা বস্তু থেকে প্রত্যাহার করা হতে পারে
বা অনুরূপ ভাষা.
জাভাস্ক্রিপ্ট হচ্ছে, প্রথমে সমস্ত জাভা না.
এটা ছিল একটা ইচ্ছাকৃত নকশা সিদ্ধান্ত বছর আগে অন্য কিছু যে ছিল জনপ্রিয় ঠক্ঠক্ শব্দ বন্ধ,
তার নাম, যদিও এটি কোনো নিজেকে জাভা মৌলিক সম্পর্ক আছে.
জাভাস্ক্রিপ্ট বস্তু আছে, এবং আপনি কোঁকড়া বক্রবন্ধনী স্বরলিপি পথে দ্বারা সেগুলি তৈরি.
জাভাস্ক্রিপ্ট অবজেক্টের হয় চমত্কার অনেক পিএইচপি মিশুক অ্যারে যাও সমতুল্য
যখন এটি তাদের ভিতর সংরক্ষণের তথ্য আসে.
>> এমনকি আরো জোরে মধ্যে জাভাস্ক্রিপ্ট ফাংশন সংযুক্ত আপনি খুব সহজেই করতে পারেন
ভিতরে একটি অবজেক্ট, এবং যদিও আপনি অন্য ভাষায় এটা করতে পারেন,
এটি বেশ একটি সাধারণ উদাহরণ, হিসাবে আমরা দেখতে পাবেন.
সংক্ষেপে, এই বস্তু একটি ছাত্র প্রতিনিধিত্ব করে, যারা বিশেষভাবে Zamyla,
এবং এটা ধারণার অনুরূপ, শুধু এই চিহ্নগুলি সিন্টেক্সের ক্ষেত্রে থেকে ভিন্ন.
চলুন আসলে একটি ফাইলের মধ্যে জাভাস্ক্রিপ্ট ব্যবহার করা.
এটি সক্রিয় আউট একটি স্ক্রিপ্ট ট্যাগ আছে.
আমরা একটি শৈলী ট্যাগ দেখা করেছি এবং আমরা অন্যান্য HTML ট্যাগ করেছেন দেখা যায়.
স্ক্রিপ্ট ট্যাগ আসলে কিছু জাভাস্ক্রিপ্ট কোড থাকতে হবে.
যাক প্রয়োগ মধ্যে সম্পর্কে যেখানে আমরা কিছু সোর্স কোড পূব বানানো আছে যান.
আমি ওয়েবসাইট থেকে এটি পোস্ট এখনো, কিন্তু আমি বর্গ পরে যে করব.
চলুন এই এক খুলুন, blink.html.
পিছনে 1990 সালে, সেখানে ছিল আক্ষরিক একটি HTML ট্যাগ নামক বিকল ট্যাগ,
এবং এই ইন্টারনেট ছিল সবচেয়ে wonderfully overused ট্যাগ এক
যেখানে আপনি কিছু 1990 শৈলী ওয়েব পৃষ্ঠাতে যান এবং টেক্সট এইজন্য ভালো আপনি ঝলকানি শুরু চাই,
Marquis ট্যাগ ফলাফল, যা টেক্সট ভালো হয়ে যাচ্ছে.
কয়েক বার যেখানে বিশ্বের আসলে একটি ওয়েব মান সম্মত হয়েছে এক,
বোর্ড জুড়ে সবাই চোখ পিট পিট ট্যাগ নিহত কিছু বছর আগে.
কিন্তু আমরা জাভাস্ক্রিপ্ট দিয়ে এটি ক্ষমতা আপনার আছে একটি বিক্ষোভের হিসাবে পুনঃপ্রচলন করতে পারেন
যখন আপনি একটি ওয়েব পাতা ভিতরে একটি প্রোগ্রাম লিখতে পারেন.
প্রথম দিন নতুন উপাদান এর উপর এবং থামিয়া পুরানো কেবল ফোকাস.
>> এখানে এই উদাহরণে পুরানো জিনিস.
আমি একটি HTML ট্যাগ, একটি head ট্যাগ, এবং একটি শিরোনাম ট্যাগ আছে.
তারপর আমি একটি div ট্যাগ দিয়ে এখানে একটি শরীর, যা রিকল শুধুমাত্র একটি পৃষ্ঠার আয়তক্ষেত্রাকার বিভাগ
যে আমি একটি অনন্য যাও "অভিবাদন" এর ইচ্ছামত আইডি দিয়েছি,
ঠিক তাই আমি এটি একটি উল্লেখ করার একটি উপায় আছে, যে খুব সহজ কিছু লেখা আছে:
হ্যালো, দুনিয়া.
এখন আমাকে এই ফাইলটি উপরে উপরে স্ক্রোল করুন এবং নতুন কী আছে দেখতে.
প্রথম যে কাজটা নতুন আপ শীর্ষ হয় স্ক্রিপ্ট ট্যাগ,
স্ক্রিপ্ট ট্যাগ নোটিশ ভিতরে এবং আমি একটি ফাংশন ঘোষণা করেছি.
জাভাস্ক্রিপ্ট একটি ফাংশন, পিএইচপি যাও প্রশংসনীয় অনুরূপ ঘোষণা,
আপনি আক্ষরিক তাহলে ফাংশনের নাম, প্রথম বন্ধনী লিখুন ফাংশন,
এবং হয়তো কিছু আর্গুমেন্ট যদি এটি কোনো লাগে.
তারপর আমি আমার স্বাভাবিক হিসাবে কোঁকড়া বক্রবন্ধনী পেয়েছেন, এবং এখন আমরা সামান্য কিছু নতুন কোড আছে,
কিন্তু যাক এর মানে কি দেখতে.
Var div সুতরাং, এই মাত্র সম্পর্কে একটি পরিবর্তনশীল তথাকথিত div দিতে মানে.
আমি এটা বলা foo বিন্যাস থাকতে পারে, কিন্তু আমি চেয়েছি বলা করা div যাও
কারণ যে একটি দ্বিতীয় মধ্যে হতে হবে সুস্পষ্ট.
তারপর এটি জাভাস্ক্রিপ্ট সক্রিয় মধ্যে আউট - এবং এই জাভাস্ক্রিপ্ট কোড আমার ওয়েব পাতা এমবেড করা -
একটি বিশেষ নামক নথির প্রকারের গ্লোবাল ভেরিয়েবল আছে.
জাভাস্ক্রিপ্ট আসলে একটি অবজেক্ট ওরিয়েন্টেড ভাষা.
আমরা বিস্তারিত মধ্যে যেতে হবে না, কি যে মানে হিসাবে 50 সালে,
কিন্তু এখন জানি যে একটি বস্তু একটি struct ভালো হয় প্রায় কাছাকাছি.
ভালো লেগেছে আমরা বহুকাল আগে দেখেছি যখন নিকটতম সমস্যা এক সেট করে
যেখানে আমরা একটি struct তথ্য অনেক রাখা,
একভাবে একটি বিশেষ struct ব্রাউজার দিয়ে যে আসে না নথির,
যেকোন ওয়েব পাতা দিয়ে আসে. এটা কিছু আমার তৈরি না.
এই দস্তাবেজটি গঠন ভিতরে যদিও,, আপনি না শুধুমাত্র তথ্য আছে
কিন্তু আপনি ফাংশন আছে.
>> এবং যে কোনো সময় আপনার একটি কাঠামোর ভিতর একটি ফাংশন আছে ভিতরে একটি বস্তুর,,
এটি একটি পদ্ধতি বলা হয়. কিন্তু একই জিনিস.
একটি পদ্ধতি যাতে শুধুমাত্র একটি ফাংশন এর ভিতরে অন্য কিছু করা হবে.
তাই এই মানে এই বিশেষ বিশ্বব্যাপী পরিবর্তনশীল নথিটি বলা
করেনি একটি ফাংশন getElementById যে আক্ষরিক যে আছে বলা হয়.
এটা আপনি DOM থেকে একটি উপাদান, ডকুমেন্ট অবজেক্ট মডেল গাছ পেতে হবে,
এই ক্ষেত্রে অভিবাদন মধ্যে যার আইডি.
অন্য কথায়, যে সব সময় আমরা ডাটা স্ট্রাকচার খরচ করে এখানে আসে.
একটি DOM এই ছবি যে আমরা একটা মুহূর্ত আগে,
যদিও পাতা একটি সামান্য ভিন্ন, যদি আমি এই ছবি একটি div ছিল,
কি document.getElementById সম্পর্কে যাও ফিরে আসবে কার্যকরভাবে একটি পয়েন্টার হতে হবে
যাও গাছ, গাছের মধ্যে আয়তক্ষেত্র একটি রেফারেন্স মধ্যে আয়তক্ষেত্র.
সুতরাং যে কি তা আসলে ঐ কর্ম এক কল মানে.
এই ক্ষেত্রে আবার এটা একটি div. এটা একটা শরীর অথবা একটি শিরোনাম না.
সুতরাং আসুন কি আমি এই div সাথে এখন যে আছে আমি এই পরিবর্তনশীল নামক div ভেতরে এটা দেখুন.
এটা জাভাস্ক্রিপ্ট সঙ্গে সক্রিয় আউট আপনি পরিবর্তনশীলরূপে আপনার পৃষ্ঠার সিএসএস খামচি ক্ষমতা আছে.
আপ এখন পর্যন্ত, আমরা CSS এর সীমিত যদ্যপি করেছেন,, সব শৈলী বৈশিষ্ট্য হল,
যেখানে অন্য অথবা আমরা সিএসএস রাখেননি?
আমি যে নষ্ট এক ধরনের. ফাইল শীর্ষে শৈলী ট্যাগ.
বা তৃতীয় স্থানে হয়েছে?
>> বহিস্থিত ফাইল, কিছু. Css.
সুতরাং যারা আছে 3 জায়গা আমরা সিএসএস পর্যন্ত সম্পন্ন করেছি,
কিন্তু ধরা হয় আমরা এটাকে এটি সমস্ত কোডেড.
আপনি সিদ্ধান্ত হিসাবে আপনি pset 7 মধ্যে ঘুঘু, আমরা সিদ্ধান্ত আগে কি আমাদের সিএসএস হবে বক্তৃতা.
কিন্তু আপনি যদি আপনার CSS এর পরিবর্তন করতে চান, আপনি আসলে তা করতে পারে
একবার আপনি সত্যিই একটি প্রোগ্রামিং ভাষা আছে.
সিএসএস, এইচটিএমএল - না প্রোগ্রামিং ভাষার. জাভাস্ক্রিপ্ট হয়.
সুতরাং দেখা যাচ্ছে যে খুব শীঘ্রই হিসাবে হিসাবে আপনি গাছ থেকে যারা rectangles এক আছে
DOM বলা হয়, তা এর ভিতরে কিছু তথ্য নিজেই.
সুতরাং div যে আমি গাছ থেকে ধরলাম আছে কি আমরা তা ভিতরে একটি সম্পত্তি ডাকবো
বলা শৈলী, শৈলী এবং সম্পত্তি আছে একটি সম্পত্তি নামক দৃশ্যমানতা নিজেই.
আমি শুধুমাত্র খুঁজছি একটি CSS এর ইউজার এর ম্যানুয়াল আপ দ্বারা এই জানতে চাই.
এটি সক্রিয় আউট একটি দৃশ্যমানতা CSS এর সম্পত্তি আছে কি যে এটি আছে.
এটা কিছু দৃশ্যমান বা না, বা দৃশ্যমান করে তোলে.
কিভাবে যে কি হল এই.
আমি programmatically দিই যদি এই div দৃশ্যমানতা লুকানো হয় না,
আমি কি এটি পরিবর্তন করতে যাও? দৃশ্যমান.
অন্যথায় যদি এই পাতা দৃশ্যমানতা লুকানো না হয় যুক্তি, আমি এটা গোপন করা না.
আমি কোন ধারণা নেই কেন এটা দৃশ্যমান এবং অদৃশ্য লুকানো এবং এবং দৃশ্যমান থাকবে না.
এটি ছিল একটি দরিদ্র পথ বরাবর নকশা সিদ্ধান্ত.
কিন্তু যারা প্রকৃতপক্ষে হল CSS এর মধ্যে opposites: দৃশ্যমান এবং লুকানো.
এই সমস্ত অর্থ আমার সিএসএস ফাইল এবং বন্ধ পরিবর্তন হয়, এবং বন্ধ আছে
জন্য যে বিশেষ div.
কিন্তু আবার, এই একটি ফাংশন বলা হয় বিকল. যখন চোখ পিট পিট করার ফাংশন বলা হয়?
এটি সক্রিয় করে অন্য একটি বিশেষ বিশ্বব্যাপী পরিবর্তনশীল নামক উইন্ডো আছে,
অনুরূপ দস্তাবেজ আত্মা মধ্যে, কিন্তু যেহেতু এই দস্তাবেজটি আপনার ওয়েব পাতা বোঝায়,
DOM গাছ ভালো, আপনি HTML এর সার্ভার থেকে পাঠানো হয়েছে,
এটি প্রায় ক্রোম, ঠিকানা দণ্ড, শিরোনাম দণ্ড উইন্ডোটি বোঝায়,
এবং আপনার ওয়েব পাতা চারপাশে যে সমস্ত বিষয় নিয়ে.
>> এবং এটি সক্রিয় যে উইন্ডো বস্তু একটি বিশেষ এটি কার্যকারিতা ভিতর বলা setInterval আছে
কি যে আছে এটা বলছেন.
এই ক্ষেত্রে প্রতি 500 মিলিসেকেন্ড - এটি একটি ব্যবধান সেট করা -
এবং, একটি অনুমান গ্রহণ করা, যা থেকে প্রতি 500 মিলিসেকেন্ড কি করছেন?
এটা যে ফাংশন বিকল চালানো যাচ্ছে.
এবং কি এখানে সুন্দর হয় যে আমরা সি এই কাজ করে থাকতে পারে যদিও কি আমরা কখনও.
সি কিছু বলা ফাংশন পয়েন্টার যেখানে আপনি প্রায় ফাংশন পাস করতে পারে আছে
আর্গুমেন্ট হিসাবে.
একইভাবে মধ্যে জাভাস্ক্রিপ্ট ফাংশন মধ্যে অন্য একটি ফাংশন নাম আপনি পাস করতে পারেন.
এবং বিজ্ঞপ্তি আমি কি করছি. আমি এই কাজ করছি না.
যদি আমি চোখ পিট পিট করার পরে প্রথম বন্ধনী করা, যে চোখ পিট পিট করার ফাংশন কল মানে হবে.
যদি আমি তাদের উপেক্ষা করা, যে এখানে মানে হয় বিকল ফাংশন
যাতে setInterval এটি প্রতি 500 মিলিসেকেন্ড কল করতে পারেন.
তাই শেষ ফলাফল, নৃশংস যদিও এটা হয় তা হল যদি আমি localhost ঢোকা এবং blink.html যান,
আমি এখন এই ঘটনাকেই আছে আবার এবং আবার.
এবং যদি আসলে আমি এলিমেন্ট পরিদর্শন, আসুন যদি আমরা এই দেখতে দেখতে পারেন.
সম্পর্কে এলিমেন্ট পরিদর্শন করা যাক, আমাকে স্ক্রল অল্পমাত্র বিট ডাউন,
সম্পর্কে এখানে উপর উপাদানসমূহ চয়ন দিন, এবং Chrome-এর পরিদর্শক এর DOM ভিতরে বিজ্ঞপ্তি.
এটা আক্ষরিক পরিবর্তন এর প্রতি 500 মিলিসেকেন্ড এদিক ওদিক.
যদি আমরা আমাদের বন্ধু Nate যান,
কখনও যদি আপনি একটি বিরতি দিয়ে কিভাবে এই কাজ করছে, একই ধারণা তুলবেন,
কিন্তু প্রকৃতপক্ষে Nate হয় রং খুব কার্যকর এখানে এই বিশেষ ক্ষেত্রে ব্যবহার করে.
তাই এই সঙ্গে আরো আসলে আমরা কি করতে পারি?
যাক এর আরেকটি উদাহরণ খুলুন এবং কিছু চেষ্টা
যে programmatically এর জিনিষ এমনকি চোখ পিট পিট করার বেশী দরকারী.
যাক আমাদের ফর্ম ডিরেক্টরির মধ্যে সম্পর্কে আজ যান এবং form0 ঢোকা.
এই ছিল ugliest সম্ভব ফর্ম যে আমি সাথে আসতে হতে পারে,
এবং আমাকে মাত্র আপনি কি এটি একটি ব্রাউজার বলে মনে হচ্ছে প্রদর্শন করুন.
>> যাক localhost / ফর্ম মধ্যে সম্পর্কে যান এবং এই form0.
এটি একটি সুপার অরুপ এইচটিএমএল ফর্ম আছে যে জন্য একটি পাসওয়ার্ড ইমেইল জন্য কয়েক ক্ষেত্র,,
পাসওয়ার্ড, এবং তারপর একটি চেকবক্স সামান্য কিছু শর্তাবলী এবং সম্মত যাও.
ধরা হয় যদি আমি এই ফর্ম যান এবং আমি আপনাকে আমার ইমেল ঠিকানা দিতে না চান,
আমি এবং শর্তাবলী হয়তো সম্মত না চান, আমি ক্লিক করুন নিবন্ধন করতে পারেন
এবং এটি সম্পর্কে দেয় যাইহোক মাধ্যমে.
এটি একটি মূঢ় পিএইচপি ফাইল নামক dump.php যাও জমা ঘটবে.
সমস্ত এটি আছে শুধু কারণনির্ণয়ের জন্য $ _GET বিষয়বস্তু প্রিন্ট আউট.
যে ছিল কি ব্যবহারকারী দ্বারা শুধুমাত্র এখন জমা ছিল.
কিন্তু অনুমান আমরা আসলে ব্যবহারকারী এর ফর্ম জমা দেওয়ার বৈধতা যাচাই করতে চান.
আমাকে সংস্করণ 1 ঢোকা.
এটি form1.html. এটা খারাপ aesthetically হিসাবে দেখায়, কিন্তু কিভাবে অভিনব এটা লক্ষ্য করা.
যদি আমি সহযোগী ছাড়া নিবন্ধন ক্লিক করুন, আমি এ yelled পেতে.
"আপনি আপনার ইমেল ঠিকানা প্রদান আবশ্যক."
ঠিক আছে. তাই আমাকে যে চেষ্টা করুন. সুতরাং malan@harvard.edu. আমি একটা পাসওয়ার্ড প্রয়োজন হয় না.
রেজিস্টার. "আপনি একটি পাসওয়ার্ড প্রদান করা আবশ্যক." ঠিক আছে.
তাই আমি অগ্নিবর্ণ একটি পাসওয়ার্ড প্রদান করবে. রেজিস্টার.
"পাসওয়ার্ডগুলি. মেলে না" আমি এখন অগ্নিবর্ণ এখানে টাইপ আছে.
আমি ঘটনাক্রমে চেক যে. রেজিস্টার.
"আপনি এবং শর্তাবলী. সম্মত হতে হবে" ঠিক আছে. সেখানে সম্মত হন. রেজিস্টার.
এবং এখন এটা দেখায় ওইদিকে ডায়গনিস্টিক আউটপুট সম্পর্কে.
>> ঠিক কি ঘটেছে?
আমরা ফর্ম জমা সত্যতা প্রতিপন্ন করা এই ক্ষমতা আছে.
বস্তুত, যদি আপনি pset 7 মধ্যে ডুব করেছিল, একটি ক্ষমাপ্রার্থী ফাংশন নেই
যে তোলে তা প্রশংসনীয় পর্দায় একটি বার্তা সঙ্গে এ চিত্কার ব্যবহারকারী যাও সহজ.
আমি সামান্য বিভিন্ন প্রক্রিয়া, সতর্কতা ফাংশন ব্যবহার করছি,
যা একটি ফাংশন যে smiled উপর থেকে এটি খুব অরুপ ব্যবহারকারী বার্তা তোলে এর নয়.
কিন্তু যাক এর কি এখানে আমি যা করছি দেখতে.
এটি form1.html, এবং যে আমি কিছু প্রশংসনীয় পরিচিত সিনট্যাক্স আছে বিজ্ঞপ্তি:
শরীরের ট্যাগ, ফর্ম ট্যাগ, কর্মের বৈশিষ্ট্য, পদ্ধতির বৈশিষ্ট্য.
কিন্তু লক্ষ্য করা আমি একটি সুবিধার জন্য অনন্য আইডি দেওয়া আমার ফর্ম করেছি.
তারপর আমি একটি ইমেইল ক্ষেত্র যার ধরনের টেক্সট পেয়েছেন,
একটি পাসওয়ার্ড ক্ষেত্রের যার ধরনের পাসওয়ার্ড, নিশ্চায়ন ক্ষেত্রের যার ধরনের পাসওয়ার্ড,
এবং তারপর একটি চেকবক্স যার নাম এখানে বেশী চুক্তি, টাইপ করার জন্য প্রযোজ্য চেকবক্স হয়.
এবং তারপর আমি একটি submit 'বোতাম পেয়েছেন.
উপরের কিন্তু লক্ষ্য করা কি আমি আরো আছে.
প্রথম সব, স্ক্রিপ্ট ট্যাগ অন্য ব্যবহার আছে.
যদি আপনার অন্য কোন ফাইলে কিছু জাভাস্ক্রিপ্ট কোড আছে শুধু সঙ্গে CSS এর মত, আপনি এটি অন্তর্ভুক্ত করা যাবে.
এবং স্ক্রিপ্টটি উৎস না যে, আমি এবং তারপর দৃশ্যত সংযোগ চাই বিজ্ঞপ্তি
একটি দীর্ঘ পথ কিন্তু googleapis.com যার নামের ফাইলটি jquery.min শেষ
জন্য সর্বনিম্ন. js.
jQuery একটি সুপার জাভাস্ক্রিপ্ট জন্য জনপ্রিয় গ্রন্থাগারের যে শুধু জাভাস্ক্রিপ্ট তোলে
সব আরো ব্যবহারকারী বন্ধুত্বপূর্ণ ব্যবহার করার জন্য.
এটি কার্যকরভাবে এর হয়ে কার্যত একটি আদর্শ.
সুতরাং যদিও কি আপনি দেখতে সম্পর্কে খাঁটি জাভাস্ক্রিপ্ট অপরিহার্যভাবে হয় না,
এটা অনেক CS50 গ্রন্থাগারের ভালো জাভাস্ক্রিপ্ট উপরে একটি লাইব্রেরি একটি স্তর
নিম্নস্তরের সি কোড উপরে; বাস্তবতা হল ইন্টারনেটে প্রায় সবাই এটি ব্যবহার করে.
সুতরাং এই প্রশিক্ষণের চাকার নয়. এটি শুধুমাত্র শ্রেষ্ঠ এই দিন অভ্যাস.
এখন নীচের বিজ্ঞপ্তি যে আমার নিজের স্ক্রিপ্ট ট্যাগ, এবং কি এখানে আমি করেছেন বিজ্ঞপ্তি.
এটি সক্রিয় যে jQuery কিছু আছে একটু অভিনব.
জাভাস্ক্রিপ্ট ডলার চিহ্ন রয়েছে, কিন্তু তারা অর্থহীন.
>> তারা চিঠি A অথবা B বা C-এর মত
jQuery করেনি সহজভাবে সত্য যাও পাড়া দাবির কনভেনশন বা সাজানোর গৃহীত
যে 'তাদের বিশেষ চিহ্ন হতে হবে.
তাই যত তাড়াতাড়ি হিসাবে আপনি স্ক্রিপ্ট ট্যাগ সঙ্গে এই বিশ্বব্যাপী জাভাস্ক্রিপ্ট ফাইল লোড এখানে আপ,
আপনি একটি বিশেষ বিশ্বব্যাপী পরিবর্তনশীল যে $ এর আহ্বান এক্সেস আছে.
এটা আরো সঠিকভাবে বলা হয় jQuery এর, কিন্তু যে হিসাবে প্রায় $ হিসাবে সেক্সি না তাকান.
কিন্তু $ কোন বিশেষ অর্থ আছে. পিএইচপি এটি বিশেষ অর্থ ছিল.
আপনি একটি পরিবর্তনশীল এর সামনে আছে ছিল.
এই মাত্র একটি ছবি জিনিস যে তারা গ্রহণ করেন.
যাচ্ছে কি এখানে হয়?
আমি jQuery ফাংশন আমার বিশ্বব্যাপী পরিবর্তনশীল নথিটি পার করছি বিজ্ঞপ্তি
এবং তারপর আমি. কলিং প্রস্তুত করছি.
কি jQuery মূলত এটি আপনি কিছু ভ্যানিলা জাভাস্ক্রিপ্ট জিনিষ নিতে পারবেন না হয়
ভালো নথিটি অবজেক্ট, উইন্ডো বস্তু,
এবং যদি আপনি jQuery ফাংশন তা পাস -
এবং আবার, পরিষ্কার করা, এই একটি ফাংশন বলা হয় jQuery -
এটি কী জন্য প্রয়োজন হয় আপনি এটা দস্তাবেজের একটি বিশেষ সংস্করণ ফেরত্
যে অধিক কার্যকারিতার সাথে জড়িত রয়েছে.
তাই কাঁচা জাভাস্ক্রিপ্ট কোন প্রস্তুত ফাংশন আছে,
কিন্তু যদি আপনি jQuery ফাংশন দস্তাবেজ প্রথম পাস,
আপনি এটি একটি নথি বস্তুর বিশেষ সংস্করণে প্রত্যাবর্তন
যে আরো অভিনব বৈশিষ্ট্য আছে.
এবং কেন যে মানুষ এটা পছন্দ. এটা ঠিক করে জিনিষ না সহজ, হিসাবে আমরা দেখুন.
কোড এই লাইন কি তাই মানে?
কোড এই লাইন এখানে মানে যখন নথি প্রস্তুত -
অন্য কথায় একবার, ব্রাউজার এই ফাইলটি নিচ পড়া সম্পন্ন করা হয় -
এগিয়ে যান এবং নিচের ফাংশন চালানো হয়.
জাভাস্ক্রিপ্ট মধ্যে সত্যিই আকর্ষণীয় কী - পিএইচপি এবং এই হিসাবে ভাল হয়েছে -
বেনামী হয় ফাংশন.
আপনাকে জাভাস্ক্রিপ্ট ফাংশন যে কোন নাম আছে কিন্তু তারা শরীরের না আছে ডিক্লেয়ার করতে পারেন.
উল্লেখ্য, এখানে কি ঘটছে.
>> এটি একটি ফাংশন বলা প্রস্তুত, এবং এটি শুধুমাত্র নিম্নলিখিত কাজগুলো অর্থ
যখন পুরো ওয়েব পেজ প্রস্তুত, যখন সব এটি করা হয়েছে এর সার্ভার থেকে পড়বেন না.
আপনি কি চান? আমি কোড একটি খণ্ড এক্সিকিউট করতে চান.
উল্লেখ্য যে আমরা এই কোড সরাসরি চালানো না চান.
যদি আমি এই বাদ, অবিলম্বে এই কোড এই লাইন এর অর্থ নির্বাহ শুরু করে.
কিন্তু এটা সত্য যে আমি কোন, নেই, কোন বলছে করছি, একটি ভালো বেনামী ফাংশনে এই মোড়ানো
মানে এখনও এটি চালানো না; এটি অবশেষে কল.
আমরা দেখেছি আমাদের ফর্ম পূর্ববর্তী উদাহরণে, এই একটি মুহূর্ত আগে.
ফাংশন কি আমরা অবশেষে কি কল, 500 মিলিসেকেন্ড পরে? নাচা.
সুতরাং একই ধারণা.
আবার, এমনকি যদি এই দেখায় একটু অদ্ভুত, শুধুমাত্র বিশ্বাসের উপর এখন জন্য গ্রহণ করা
যে একটি বেনামী ফাংশন যে অবশেষে নামক এর ডিক্লেয়ার,
আপনি কেবল ফাংশন () {লিখুন
তাই কোড আমরা অবশেষে চালানো যাচ্ছে? নিম্নলিখিত.
এই অতি সামান্য নতুন দেখায়, কিন্তু এই এখানে মানে jQuery এর ফাংশন,
এবং এখন এই একটি শর্টকাট.
HTML-এর এই কোর্সের পর্দায় নীচের অংশে স্নিপেট কিছু গাছ উপস্থাপনা আছে.
এই না. এই পৃষ্ঠাটি হল এই হ্যালো, যেমন বিশ্বের তুলনায় আরো আকর্ষণীয়.
কিন্তু কিছু গাছ এই HTML এ যে অনুরূপ আছে.
এটা যাও যাও recursive ফাংশন কিছু বাস্তবায়ন আছে ঘাড় ব্যাথা হবে
রুট নোড এ এবং তারপর শুরু নোড যার আইডি খুঁজে পেতে নিবন্ধন.
তাই jQuery তোলে সুপার সহজ জন্য আমাদের আক্ষরিক অর্থ হল এই.
এগিয়ে যান এবং সম্পর্কে পেতে সবটা div বা যাই হোক না কেন ফর্ম, যাই হোক না কেন HTML এলিমেন্ট
রেজিস্ট্রেশনের একটি আইডি আছে.
এই গতি document.getElementById ('রেজিস্ট্রেশন') যাও.
>> কেন না jQuery ভালো লেগেছে?
কারণ এটা খাটো যাও টাইপ করুন. কিন্তু যে সব হয়. এটি একই ধারণা.
সম্পর্কে ট্যাগ যার আইডি নিবন্ধন পান.
এবং যখন যে ট্যাগ, যা একটি ফর্ম হতে হবে, জমা হয়,
এগিয়ে যান এবং এই কোড এক্সিকিউট.
সুতরাং এর দেওয়া এক এখন আমরা কিভাবে ফর্ম যাচাইকরণ করছেন তাকান.
সিন্টেক্স হল প্রথম সর্বসম্মতভাবে রহস্যপূর্ণ, কিন্তু কি করছেন?
যদি এই কোড লাইন সত্য, আমি এ ব্যবহারকারী তার ইমেইল ঠিকানা প্রদান চিত্কার যাচ্ছি.
তাহলে কোড এই লাইন?
$ JQuery মানে. এখন এই বিজ্ঞপ্তি.
এটি CSS এর মত ধরনের.
আপনি যদি এখনো CSS এর মধ্যে dived করেছি, আপনি যে এই উপাদান যার আইডি নিবন্ধন অর্থ জানতে পারবেন.
স্থান মানে একটি শিশু বা নিবন্ধন একটি বংশধর যার নাম হল ইনপুট খুঁজে.
এবং তারপর বর্গাকার বন্ধনী এই জিনিষ একটু ফিল্টার.
এমনকি যদি এই রহস্যপূর্ণ দেখায়, ঠিক এই ফর্ম মানে যার আইডি নিবন্ধন যান,
যে যার নাম হল ইমেল ইনপুট উপাদান ভিতরে যান,
এবং তারপর তার মূল্য পেতে, যাই হোক না কেন তার মান হবে এরকম -
asdf যদি যে সমস্ত আমি টাইপ করা অথবা malan@harvard.edu যদি তাই আমি টাইপ করা.
তাই আপনি যদি ফর্ম এর ইমেল ক্ষেত্রের == কিছুই মান ব্যবহারকারী এ, চিত্কার.
অন্যথায় যদি পাসওয়ার্ড ক্ষেত্রের মান == কিছুই ব্যবহারকারী এ, চিত্কার.
>> অন্যথায় যদি পাসওয়ার্ড ক্ষেত্রের মান নিশ্চিতকরণ ক্ষেত্রের মান সমান হয় না,
যা ছিল অন্যান্য ফর্ম উপাদান ব্যবহারকারী এ, চিত্কার.
এবং সর্বশেষে তারপর - এবং এই এক খুব নিজস্ব কিছু নতুন বাক্য গঠন করা হয়েছে,
কিন্তু একবার আপনি এটা দেখা করেছি, এটা অন্তত একটু অধিক যুক্তিসঙ্গত -
অন্যথায় যদি যেটির আইডি নিবন্ধীকরণ একটি ইনপুট উপাদান যার নাম হল চুক্তি হয়েছে
এবং তা চেক করা হয়, এগিয়ে যান এবং ব্যবহারকারী এ চিত্কার.
তাই সম্পূর্ণভাবে আমি মানা এই প্রথম নজরে সম্পূর্নরুপে অপ্রতিরোধ্য.
এটা নতুন বাক্য গঠন অনেকটা. কিন্তু jQuery সমস্ত নিদর্শন এই ধরনের অনুসরণ করে.
এবং সত্যি বলতে, আমার এই অস্তিত্ব পর্যন্ত একটি মাত্র কয়েক মিনিট আগে এমনকি জানি না.
আমি Googled, "কিভাবে আপনি যদি একটি চেকবক্স jQuery মধ্যে চেক চেক করা হয়?"
এবং এই বাক্য গঠন, কারণ এরকম বিভিন্ন উপায় আছে
সঙ্গে প্রকৃত কাঁচা জাভাস্ক্রিপ্ট কোড.
সুতরাং সমস্যা হিসাবে সেট 7 খুব প্রথম পাতা উপর জোর দেয়,
pset 7 বহুলাংশেই নিজেকে bootstrapping একটি ব্যায়াম
যেখানে আমরা, আশা দেওয়া একটি ধারণাগত সঙ্গে যা pset জাহাজের দড়িদড়া ফ্রেমওয়ার্ক করেছি,.
>> কিন্তু প্রায়ই একটি ওয়েব ডিজাইনের সাথে ক্ষেত্রে, এটা সত্যিই প্রায় যাও অকর্মা আপনাকে আপ এর,
ওয়েব থেকে স্নিপেট কোড এবং উদাহরণ এতক্ষণ হিসাবে আপনি তাদের cite নিগমবদ্ধ
প্রতি যে প্রথম পত্রকে পদ,
এবং বুঝতে পারি যে এইচটিএমএল, সিএসএস, জাভাস্ক্রিপ্ট এবং এমনকি SQL শেখার
সত্যি সত্যি এই লোক ব্যায়াম হিসাবে আমরা এইসব প্রশিক্ষণ চাকার অপসৃত হতে শুরু বোঝানো.
এবং বুঝতে খুব যাতে আরও অনেক জিনিষ আপনি একটি ব্রাউজার দিয়ে করতে পারেন.
এই উপাদানের সবচেয়ে ইনসাইড অন্যান্য নামক ইভেন্ট হ্যান্ডলার জিনিষ আছে.
এবং যদিও আমরা ঠিক বেশী দিকে তাকিয়ে নামক onsubmit এবং onready,
আপনি onkeydown, onkeyup মত কাজ করতে পারেন,
ব্যবহারকারীরা যখন কোনো একটি কি স্পর্শ করতে চান, এবং আপনি যে কী আপ জন্য শুনতে পারেন.
Gmail এর কীবোর্ড শর্টকাট আছে.
কিভাবে Google তার জন্য রচনা C-এর মতো কীবোর্ড শর্টকাট বাস্তবায়ন?
তারা ঘটনা শোনার জন্য, হিসাবে তারা onkeypress বা onkeyup এবং onkeydown ভালো বলা করছি,.
আপনি যদি কখনও কিছু মেনু অপশন উপর করেছি আপনার মাউস hovered
এবং একটি আকস্মিক, voila সব, একটি মেনু প্রদর্শিত বা গ্রাফিক রং পরিবর্তন,
কিভাবে তারা যে করছে?
Onready বা onsubmit জন্য পরিবর্তে শুধুমাত্র শোনার জন্য, অথবা আপনি onmouseover onmouseout শোনার জন্য.
>> সুতরাং এইসব খুব সহজ বুনিয়াদি সঙ্গে সংক্ষিপ্ত, যে আমরা আজ পৃষ্ঠের স্ক্র্যাচ শুরু করেছি
এবং আমরা আরও মধ্যে বুধবার, আপনার আছে, ক্রমবর্ধমান আকর্ষণীয় করব,
ক্ষমতা যে সব জিনিষ আপনি ইতিমধ্যে পরিচিত ধরণের বাস্তবায়ন.
সুতরাং এর কোন শেষ হয়ে যাক, এবং আমরা বুধবার এই চালিয়ে যাব.
>> [CS50.TV]