Elixir और Phoenix: स्केलेबल बैकएंड विकास · पाठ

मूल डेटा प्रकार और ऑपरेटर

एटम, सूचियाँ, टपल और मैप जैसे मूल Elixir डेटा प्रकारों का अन्वेषण करें और बुनियादी ऑपरेटरों का उपयोग करना सीखें।

पाठ 2, कुल 4 में से13 चरण

मूल डेटा प्रकार और ऑपरेटर, CoddyKit पर Elixir और Phoenix: स्केलेबल बैकएंड विकास का एक निःशुल्क पाठ है। यह 4 में से 2वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Elixir और Phoenix: स्केलेबल बैकएंड विकास सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Elixir और Phoenix: स्केलेबल बैकएंड विकास पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

डेटा प्रकार और ऑपरेटर: परिचय

हर प्रोग्राम डेटा प्रकारों (जिन्हें आप संग्रहित कर सकते हैं) और ऑपरेटरों (वे प्रतीक जो उन पर काम करते हैं) पर आधारित होता है। आइए Elixir की मूल सुविधाओं से परिचित हों।

संख्याएँ: पूर्णांक और दशमलव

Elixir में संख्याओं के दो प्रकार होते हैं: 42 जैसे पूर्णांक और 3.14 जैसे दशमलव। मानक गणित दोनों पर काम करता है, जैसा कि यह कोड अंश दिखाता है।

defmodule NumbersDemo do
  def run() do
    integer_num = 42
    float_num = 3.14159

    IO.puts "Integer: #{integer_num}"
    IO.puts "Float: #{float_num}"
    IO.puts "Sum: #{integer_num + 10.0}"
  end
end

NumbersDemo.run()

बूलियन: True, False, Nil

सत्य मान true और false होते हैं। "कोई मान नहीं" दर्शाने वाले nil पर ध्यान दें — और यह भी कि false और nil असत्य माने जाते हैं; बाकी सब सत्य माने जाते हैं।

defmodule BooleansDemo do
  def run() do
    is_active = true
    has_error = false
    no_value = nil

    IO.puts "Is Active? #{is_active}"
    IO.puts "Has Error? #{has_error}"
    IO.puts "No Value? #{no_value}"

    if no_value do
      IO.puts "This won't print."
    else
      IO.puts "nil is falsy!"
    end
  end
end

BooleansDemo.run()

एटम: अद्वितीय पहचानकर्ता

एटम ऐसा स्थिरांक है जिसका नाम ही उसका मान होता है, जैसे :ok। इनकी तुलना तेज़ी से की जा सकती है और ये स्थिति कोड तथा मैप कुंजियों के लिए आदर्श हैं।

defmodule AtomsDemo do
  def run() do
    status = :ok
    type = :user

    IO.puts "Current status: #{status}"
    IO.puts "User type: #{type}"

    if status == :ok do
      IO.puts "Operation successful!"
    end
  end
end

AtomsDemo.run()

स्ट्रिंग: पाठ्य डेटा

Elixir की स्ट्रिंग दोहरे उद्धरणों में लिखी गई UTF-8 बाइनरी होती है, इसलिए यह किसी भी भाषा को संभाल सकती है। स्ट्रिंग को <> ऑपरेटर से जोड़ें।

defmodule StringsDemo do
  def run() do
    greeting = "Hello"
    name = "CoddyKit"
    message = greeting <> ", " <> name <> "!"

    IO.puts message
    IO.puts "String length: " <> to_string(String.length(message))
  end
end

StringsDemo.run()

सूचियाँ: क्रमबद्ध संग्रह

सूची वर्गाकार कोष्ठकों में लिखा गया एक क्रमबद्ध संग्रह है, जिसमें अलग-अलग प्रकार के मान हो सकते हैं। यह फंक्शनल प्रोग्रामिंग का मुख्य साधन है और शुरुआत में मान जोड़ने पर तेज़ होती है।

defmodule ListsDemo do
  def run() do
    my_list = [1, 2, 3, :hello, "world"]
    another_list = [4, 5]

    IO.puts "Original list: " <> inspect(my_list)
    IO.puts "Concatenated list: " <> inspect(my_list ++ another_list)
    IO.puts "Head of list: " <> inspect(hd(my_list))
    IO.puts "Tail of list: " <> inspect(tl(my_list))
  end
end

ListsDemo.run()

ट्यूपल: निश्चित आकार के संग्रह

ट्यूपल घुंघराले कोष्ठकों में लिखा गया निश्चित आकार का संग्रह है। समूहित परिणामों के लिए यह हर जगह दिखाई देता है, जैसे {:ok, result} या {:error, reason}।

defmodule TuplesDemo do
  def run() do
    person_info = {"Alice", 30, :female}
    result_tuple = {:ok, "Data fetched"}

    IO.puts "Person: " <> inspect(person_info)
    IO.puts "Result: " <> inspect(result_tuple)

    # Accessing elements (0-indexed)
    IO.puts "Name: " <> elem(person_info, 0)
  end
end

TuplesDemo.run()

मैप: कुंजी-मान युग्म

मैप %{} में कुंजी-मान युग्म रखता है — गति के लिए आमतौर पर एटम कुंजियों का उपयोग किया जाता है। संरचित रिकॉर्ड या कॉन्फ़िगरेशन का मॉडल बनाते समय इसका उपयोग करें।

defmodule MapsDemo do
  def run() do
    user = %{name: "Bob", age: 25, city: "New York"}

    IO.puts "User: " <> inspect(user)
    IO.puts "User's name: #{user.name}"

    # Updating a map
    updated_user = %{user | age: 26}
    IO.puts "Updated age: #{updated_user.age}"
  end
end

MapsDemo.run()

अंकगणितीय ऑपरेटर

Elixir में सामान्य अंकगणितीय ऑपरेटर के साथ-साथ पूर्णांकों के लिए div और rem भी उपलब्ध हैं। ध्यान दें: / हमेशा दशमलव लौटाता है।

defmodule ArithmeticDemo do
  def run() do
    IO.puts "5 + 3 = #{5 + 3}"
    IO.puts "10 - 4 = #{10 - 4}"
    IO.puts "6 * 7 = #{6 * 7}"
    IO.puts "10 / 3 = #{10 / 3}"  # Float division
    IO.puts "10 div 3 = #{10 div 3}" # Integer division
    IO.puts "10 rem 3 = #{10 rem 3}" # Remainder
  end
end

ArithmeticDemo.run()

तुलना ऑपरेटर

तुलना ऑपरेटर बूलियन मान लौटाते हैं। मानों की समानता के लिए == का उपयोग करें, लेकिन प्रकार भी महत्वपूर्ण हो तो === का उपयोग करें — 1 === 1.0 false है।

defmodule ComparisonDemo do
  def run() do
    IO.puts "5 == 5: #{5 == 5}"
    IO.puts "5 != 10: #{5 != 10}"
    IO.puts "5 < 10: #{5 < 10}"
    IO.puts "10 >= 10: #{10 >= 10}"
    IO.puts "1 == 1.0: #{1 == 1.0}" # True (value equality)
    IO.puts "1 === 1.0: #{1 === 1.0}" # False (type strictness)
  end
end

ComparisonDemo.run()

अपनी समझ जाँचें

निम्नलिखित Elixir कोड अंश पर विचार करें:

result = 10 div 3
status = :ok
message = "Value is #{result}"
comparison = (result > 3) == true

IO.puts "#{message}, Status: #{status}, Comparison: #{comparison}"

इस कोड का अंतिम आउटपुट क्या होगा?

अपनी समझ जाँचें (संशोधित)

निम्नलिखित Elixir कोड अंश पर विचार करें:

result = 10 div 3
status = :ok
message = "Value is #{result}"
comparison = (result > 3)

IO.puts "#{message}, Status: #{status}, Comparison: #{comparison}"

इस कोड का अंतिम आउटपुट क्या होगा?

पुनरावलोकन: डेटा प्रकार और ऑपरेटर

पुनरावलोकन: पूर्णांक और दशमलव, बूलियन और nil, एटम, स्ट्रिंग, सूचियाँ, ट्यूपल, मैप और उन पर काम करने वाले ऑपरेटर। ये Elixir की आपकी नींव हैं।

शुरुआत निःशुल्क

एआई शिक्षक के साथ Elixir सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
12
पाठ
48

अक्सर पूछे जाने वाले प्रश्न

क्या “मूल डेटा प्रकार और ऑपरेटर” पाठ निःशुल्क है?

हाँ—“मूल डेटा प्रकार और ऑपरेटर” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Elixir और Phoenix: स्केलेबल बैकएंड विकास पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Elixir और Phoenix: स्केलेबल बैकएंड विकास पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“मूल डेटा प्रकार और ऑपरेटर” में मैं क्या सीखूँगा?

एटम, सूचियाँ, टपल और मैप जैसे मूल Elixir डेटा प्रकारों का अन्वेषण करें और बुनियादी ऑपरेटरों का उपयोग करना सीखें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Elixir और Phoenix: स्केलेबल बैकएंड विकास का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Elixir और Phoenix: स्केलेबल बैकएंड विकास शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Elixir और Phoenix: स्केलेबल बैकएंड विकास शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 2वाँ पाठ है।

“मूल डेटा प्रकार और ऑपरेटर” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Elixir और Phoenix: स्केलेबल बैकएंड विकास पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Elixir और Phoenix: स्केलेबल बैकएंड विकास पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. Elixir भाषा का परिचय
  2. मूल डेटा प्रकार और ऑपरेटर
  3. पैटर्न मिलान और नियंत्रण प्रवाह
  4. Elixir में स्ट्रिंग, बाइनरी और सिगिल
← Elixir और Phoenix: स्केलेबल बैकएंड विकास पर वापस जाएँ