Google 致力于为黑人社区推动种族平等。查看具体举措

আপনার অ্যাপ্লিকেশনটি সংযুক্ত করুন এবং প্রোটোটাইপিং শুরু করুন

: আগে আপনি Firebase স্থানীয় এমুলেটর সুইট দিয়ে লাফ, নিশ্চিত করুন যে আপনার প্ল্যাটফর্মের জন্য Firebase বিষয় দিয়ে শুরু করতে অনুযায়ী আপনি একটি Firebase প্রকল্পের তৈরি করে নিলে, আপনার উন্নয়ন পরিবেশ সেট আপ এবং নির্বাচিত এবং আপনার প্ল্যাটফর্মের জন্য Firebase SDK আছে ইনস্টল করা আইওএস , অ্যান্ড্রয়েড অথবা ওয়েব

প্রোটোটাইপ এবং পরীক্ষা

স্থানীয় এমুলেটর সুইট বিভিন্ন পণ্য emulators, এ হিসাবে বর্ণনা রয়েছে Firebase স্থানীয় এমুলেটর সুইট পরিচিতি । আপনি প্রযোজ্য এবং পৃথক এমুলেটরগুলির পাশাপাশি এমুলেটরগুলির সংমিশ্রণগুলির সাথে পরীক্ষা করতে পারেন, যেমন আপনি উপযুক্ত দেখতে পান, যা আপনি ফায়ারবেস পণ্যগুলি উৎপাদনে ব্যবহার করছেন।

ফায়ারবেস ডাটাবেস এবং ফাংশন এমুলেটরগুলির মধ্যে মিথস্ক্রিয়া
এর অংশ হিসেবে ডাটাবেস এবং ক্লাউড কার্যাবলী emulators সম্পূর্ণ স্থানীয় এমুলেটর সুইট

এই বিষয়টির জন্য, স্থানীয় এমুলেটর স্যুট ওয়ার্কফ্লো প্রবর্তনের জন্য, ধরুন আপনি এমন একটি অ্যাপে কাজ করছেন যা পণ্যের একটি সাধারণ সংমিশ্রণ ব্যবহার করে: একটি ফায়ারবেস ডাটাবেস এবং ক্লাউড ফাংশনগুলি সেই ডাটাবেসের ক্রিয়াকলাপ দ্বারা উদ্ভূত।

আপনি স্থানীয়ভাবে আপনার ফায়ারবেস প্রকল্প শুরু করার পর, স্থানীয় এমুলেটর স্যুট ব্যবহার করে উন্নয়ন চক্রের সাধারণত তিনটি ধাপ থাকবে:

  1. প্রোটোটাইপ এমুলেটর এবং এমুলেটর স্যুট UI এর সাথে ইন্টারেক্টিভভাবে বৈশিষ্ট্যযুক্ত।

  2. আপনি যদি একটি ডাটাবেস এমুলেটর বা ক্লাউড ফাংশন এমুলেটর ব্যবহার করেন, তাহলে আপনার অ্যাপকে এমুলেটরগুলির সাথে সংযুক্ত করার জন্য এক-বার পদক্ষেপ করুন।

  3. এমুলেটর এবং কাস্টম স্ক্রিপ্ট দিয়ে আপনার পরীক্ষাগুলি স্বয়ংক্রিয় করুন।

স্থানীয়ভাবে একটি Firebase প্রকল্প শুরু করুন

নিশ্চিত করুন যে আপনি করুন CLI ইনস্টল বা তার সাম্প্রতিক সংস্করণে আপডেট করুন

curl -sL firebase.tools | bash

যদি আপনি ইতিমধ্যে এটি না করে থাকে, তাহলে একটি Firebase প্রকল্প হিসেবে সাম্প্রতিক কাজ করা আরম্ভ, আপনি ক্লাউড কার্যাবলী এবং হয় ক্লাউড Firestore বা রিয়েলটাইম ডাটাবেস ব্যবহার করছেন উল্লেখ পর্দায় আসেন অনুরোধ জানানো নিম্নলিখিত:

firebase init

আপনার প্রকল্প ডিরেক্টরির এখন Firebase কনফিগারেশন ফাইল, ডাটাবেজ জন্য Firebase সিকিউরিটি রুলস সংজ্ঞা ফাইল, একটি উপস্থিত থাকবে functions ধারণকারী ডিরেক্টরির মেঘ ফাংশন কোড, এবং অন্যান্য সমর্থনকারী ফাইল।

ইন্টারেক্টিভভাবে প্রোটোটাইপ

স্থানীয় এমুলেটর স্যুটটি আপনাকে নতুন বৈশিষ্ট্যগুলি দ্রুত প্রোটোটাইপ করার জন্য ডিজাইন করা হয়েছে, এবং স্যুট এর অন্তর্নির্মিত ইউজার ইন্টারফেসটি এর সবচেয়ে দরকারী প্রোটোটাইপিং সরঞ্জামগুলির মধ্যে একটি। এটি কিছুটা Firebase কনসোল স্থানীয়ভাবে চলার মত।

এমুলেটর স্যুট UI ব্যবহার করে, আপনি একটি ডাটাবেসের নকশা পুনরাবৃত্তি করতে পারেন, ক্লাউড ফাংশনের সাথে জড়িত বিভিন্ন ডেটাফ্লো ব্যবহার করে দেখতে পারেন, নিরাপত্তা বিধিমালার পরিবর্তনগুলি মূল্যায়ন করতে পারেন, আপনার ব্যাক-এন্ড পরিষেবাগুলি কীভাবে কাজ করছে তা নিশ্চিত করতে লগগুলি পরীক্ষা করুন এবং আরও অনেক কিছু। তারপরে, আপনি যদি নতুন করে শুরু করতে চান তবে কেবল আপনার ডাটাবেস সাফ করুন এবং নতুন নকশা ধারণা দিয়ে নতুন করে শুরু করুন।

যখন আপনি স্থানীয় এমুলেটর স্যুটটি শুরু করেন তখন এটি উপলব্ধ:

firebase emulators:start

আমাদের অনুমানমূলক অ্যাপটিকে প্রোটোটাইপ করার জন্য, আসুন একটি ডাটাবেসে পাঠ্য এন্ট্রিগুলি সংশোধন করার জন্য একটি মৌলিক ক্লাউড ফাংশন সেট আপ এবং পরীক্ষা করি, এবং উভয়ই এমুলেটর স্যুট UI তে সেই ডাটাবেসটি তৈরি এবং পপুলেট করে।

  1. সম্পাদনা করে মেঘ ফাংশন ডাটাবেসের লিখেছেন দ্বারা আলোড়ন সৃষ্টি তৈরি করুন functions/index.js আপনার প্রকল্পের ডিরেক্টরির মধ্যে ফাইল। বিদ্যমান ফাইলের বিষয়বস্তু নিচের স্নিপেট দিয়ে প্রতিস্থাপন করুন। নথি পরিবর্তনের জন্য এই ফাংশনটি শোনা messages সংগ্রহ, একটি নথি এর বিষয়বস্তু পরিবর্তন করে original দস্তাবেজটি এর ফলাফলের বড়হাতের থেকে ক্ষেত্র, এবং সঞ্চয় uppercase ক্ষেত্র।
  2.   const functions = require('firebase-functions');
    
      exports.makeUppercase = functions.firestore.document('/messages/{documentId}')
          .onCreate((snap, context) => {
            const original = snap.data().original;
            console.log('Uppercasing', context.params.documentId, original);
            const uppercase = original.toUpperCase();
            return snap.ref.set({uppercase}, {merge: true});
          });
      
  3. সঙ্গে স্থানীয় এমুলেটর সুইট লঞ্চ firebase emulators:start । ক্লাউড ফাংশন এবং ডাটাবেস এমুলেটরগুলি শুরু হয়, স্বয়ংক্রিয়ভাবে ইন্টারঅপারেট করার জন্য কনফিগার করা হয়।
  4. আপনার ব্রাউজারে UI 'তে দেখুন http://localhost:4000 । পোর্ট 4000 হল UI- এর জন্য ডিফল্ট, কিন্তু Firebase CLI দ্বারা টার্মিনাল মেসেজ আউটপুট চেক করুন। উপলব্ধ emulators অবস্থা লক্ষ্য করুন। আমাদের ক্ষেত্রে, ক্লাউড ফাংশন এবং ক্লাউড ফায়ারস্টোর এমুলেটর চলবে।
    আমার ইমেজ
  5. UI 'তে সালে Firestore ট্যাবে, তথ্য উপ-ট্যাবে, স্টার্ট সংগ্রহে ক্লিক করুন এবং একটি নতুন দস্তাবেজ তৈরি করতে অনুরোধ জানানো অনুসরণ করুন messages FIELDNAME সঙ্গে সংগ্রহ, original এবং মান test । এটি আমাদের ক্লাউড ফাংশনকে ট্রিগার করে। পালন একটি নতুন যে uppercase ক্ষেত্র খুব শীঘ্রই প্রদর্শিত হবে, স্ট্রিং "পরীক্ষা" সঙ্গে জনবহুল।
    আমার ইমেজআমার ইমেজ
  6. Firestore উপর> অনুরোধগুলি ট্যাব, পরীক্ষা সব Firebase সিকিউরিটি রুলস মূল্যায়ন সহ আপনার অনুকরণের ডাটাবেস, তৈরি অনুরোধ ঐ অনুরোধের পূরণে অংশ হিসেবে পালন করেন।
  7. যেমন ডাটাবেসের আপডেট আপনার ফাংশন নিশ্চিত করতে ত্রুটি মধ্যে চালানো হয়নি লগ ট্যাব পরীক্ষা করে দেখুন।

আপনি সহজেই আপনার ক্লাউড ফাংশন কোড এবং ইন্টারেক্টিভ ডাটাবেস এডিটের মধ্যে পুনরাবৃত্তি করতে পারেন যতক্ষণ না আপনি ডেটা প্রবাহ খুঁজে পাচ্ছেন, ইন-অ্যাপ ডাটাবেস অ্যাক্সেস কোড স্পর্শ না করে, পুনরায় কম্পাইল করা এবং পরীক্ষা স্যুট পুনরায় চালানো।

আপনার অ্যাপকে এমুলেটরগুলির সাথে সংযুক্ত করুন

যখন আপনি ইন্টারেক্টিভ প্রোটোটাইপিংয়ের সাথে ভাল অগ্রগতি করেছেন এবং একটি নকশায় স্থির হয়ে গেছেন, তখন আপনি উপযুক্ত SDK ব্যবহার করে আপনার অ্যাপে ডাটাবেস অ্যাক্সেস কোড যুক্ত করতে প্রস্তুত হবেন। আপনি ডাটাবেস ট্যাব ব্যবহার করা চালিয়ে যাব এবং, কাজগুলির জন্য এমুলেটর সুইট UI 'তে লগ ট্যাব তা নিশ্চিত করতে আপনার অ্যাপ্লিকেশনের আচরণ সঠিক।

মনে রাখবেন লোকাল এমুলেটর স্যুট একটি স্থানীয় ডেভেলপমেন্ট টুল। আপনার প্রোডাকশন ডেটাবেসে লেখা আপনি স্থানীয়ভাবে প্রোটোটাইপ করা ফাংশনগুলিকে ট্রিগার করবেন না।

আপনার অ্যাপকে ডাটাবেসে লেখার জন্য স্যুইচ করতে, আপনাকে ক্লাউড ফায়ারস্টোর এমুলেটরে আপনার পরীক্ষার ক্লাস বা ইন-অ্যাপ কনফিগারেশন নির্দেশ করতে হবে।

অ্যান্ড্রয়েড
        // 10.0.2.2 is the special IP address to connect to the 'localhost' of
        // the host computer from an Android emulator.
        FirebaseFirestore firestore = FirebaseFirestore.getInstance();
        firestore.useEmulator("10.0.2.2", 8080);

        FirebaseFirestoreSettings settings = new FirebaseFirestoreSettings.Builder()
                .setPersistenceEnabled(false)
                .build();
        firestore.setFirestoreSettings(settings);
আইওএস - সুইফট
let settings = Firestore.firestore().settings
settings.host = "localhost:8080"
settings.isPersistenceEnabled = false 
settings.isSSLEnabled = false
Firestore.firestore().settings = settings

ওয়েব সংস্করণ 9

import { getFirestore, connectFirestoreEmulator } from "firebase/firestore";

// firebaseApps previously initialized using initializeApp()
const db = getFirestore();
connectFirestoreEmulator(db, 'localhost', 8080);

ওয়েব সংস্করণ 8

// Firebase previously initialized using firebase.initializeApp().
var db = firebase.firestore();
if (location.hostname === "localhost") {
  db.useEmulator("localhost", 8080);
}
ওয়েব
// Initialize your Web app as described in the Get started for Web
// Firebase previously initialized using firebase.initializeApp().
var db = firebase.firestore();
if (location.hostname === "localhost") {
  db.useEmulator("localhost", 8080);
}

কাস্টম স্ক্রিপ্ট দিয়ে আপনার পরীক্ষা স্বয়ংক্রিয় করুন

এখন শেষ সামগ্রিক কর্মপ্রবাহ ধাপের জন্য। একবার আপনি আপনার ফিচারটি ইন-অ্যাপ প্রোটোটাইপ করে নিলে এবং এটি আপনার সমস্ত প্ল্যাটফর্মে আশাব্যঞ্জক দেখায়, আপনি চূড়ান্ত বাস্তবায়ন এবং পরীক্ষার দিকে যেতে পারেন। ইউনিট টেস্টিং জন্য এবং সি আই Workflows, আপনি emulators আরম্ভ স্ক্রিপ্টের পরীক্ষা চালানোর জন্য, এবং সঙ্গে একটি একক কলে emulators শাট ডাউন করতে পারেন exec কমান্ড প্রয়োগ করুন:

firebase emulators:exec "./testdir/test.sh"

আরও গভীরতায় পৃথক এমুলেটরগুলি অন্বেষণ করুন

এখন যেহেতু আপনি দেখেছেন মৌলিক ক্লায়েন্ট-সাইড ওয়ার্কফ্লো কেমন দেখাচ্ছে, আপনি স্যুইটে পৃথক এমুলেটর সম্পর্কে বিস্তারিত জানাতে পারেন, সেগুলি কীভাবে সার্ভার-সাইড অ্যাপ ডেভেলপমেন্টের জন্য ব্যবহার করবেন:

তারপর কি?

উপরে সংযুক্ত নির্দিষ্ট এমুলেটর সম্পর্কিত বিষয়গুলি পড়তে ভুলবেন না। তারপর: