@Anton_repr

Почему я должен писать именно так, а не иначе?

Добрый день. Где прописаны правила написания кода?
Я не совсем понимаю, почему я должен писать именно так:Console.Write("").
Почему я не могу убрать скобки, или ещё что-нибудь, и написать так, как мне хочется. В общем, где все это определено?
  • Вопрос задан
  • 497 просмотров
Решения вопроса 2
@MamaLuyba
не, писать ты можешь, как угодно. но работать это не будет.
почему ты написал "добрый день", а не "дываобыв валывн"? так же и тут.
Ответ написан
jcmvbkbc
@jcmvbkbc
http://dilbert.com/strip/1998-08-24
Почему я не могу убрать скобки, или ещё что-нибудь, и написать так, как мне хочется. В общем, где все это определено?

Это определено спецификацией языка на котором вы пишете. Среди прочего она определяет грамматику языка (т.е. как можно писать) и семантику языковых конструкций (т.е. что написанное так или иначе обозначает).
Ответ написан
Пригласить эксперта
Ответы на вопрос 7
JZ_52
@JZ_52
Студент
Какой-то глупый вопрос. Такой синтаксис языка.
Ответ написан
@HEKOT
Embedded
Почему я должен писать именно так, а не иначе?
Добрый день. Где прописаны правила написания кода?
Я не совсем понимаю, почему я должен писать именно так:Console.Write("").
Почему я не могу убрать скобки, или ещё что-нибудь, и написать так, как мне хочется. В общем, где все это определено?


По Вашим многочисленным вопросам не полне понятно, что Вы имеете ввиду.

Давайте вместе поразмыслим и ответим на каждый из них.
Если Вы пишете по-русски, то фраза "Console.Write("")" никакогосмысла не имеет.
Если Вы пишете, используя азбуку Морзе, то "Console.Write("")" даже написать невозможно (там в алфавите две буквы всего: "." и "-"
Если Вы пишите на языке bat файлов, то этот номер у Вас снова не пройдёт.
В принципе, возможен язык, в котором это сработает, но смысл будет иметь совсем не тот, который Вы хотели вложить.

То есть, можно заключить, что ответ на вопрос "Почему я должен писать именно так, а не иначе?" -- потому что язык устроен именно так.

"Где прописаны правила написания кода?" -- очевидно, в Правилах написания кода. Дальше предполагаем, что речь о С-подобном языке программирования. Для языков программирования есть документы (стандарты) на основе которых они работают.
Многим как людям читать стандарты не охота. Компьютеры читать вообще не умеют.
Для людей придумали всевозможные руководства, учебники, самоучители и курсы. Для компьютеров написали программы (называются "трансляторы"), в которых закодировали всё поняным для компьютеров языком.
"В общем, где все это определено?" в стандартах.

"Почему я не могу убрать скобки, или ещё что-нибудь..."
Потому что в стандарте языка С написано, что аргументы функций требуется заключать в скобки. Если скобок нет, то это для транслятора не аргумент, а значит, и лексема перед -- не вызов функции. Бывают языки, где скобки не требуются. То же относится к прочим элементам: кавычки, точки, точки с зяпятой.
То же самое есть и в языках общения: предложения отделяются точкой, начинаются с заглавной буквы и т.д. Но существуют языки, где эт оне так: испанский или китайский, например.

"... и написать так, как мне хочется."
Потому что Ваша задача самовыразиться не в печатании текста, а в объяснении своей мысли компьютеру.
Ответ написан
AlexZaharow
@AlexZaharow
Программист.
Почему я должен писать именно так, а не иначе?
Хороший вопрос. Один человек, изначально тоже подумал, а как бы вообще замутить такую конструкцию, чтобы я мог считать, что одно слово - это функция, а другое аргумент. И придумал письменность.
Ответ написан
@AlexSku
Программист по автоматике
Скобки говорят, что Write это функция.
Точка говорит, что она принадлежит объекту Console. Функцию объекта (класса) принято называть методом.
Ответ написан
mindtester
@mindtester Куратор тега C#
делаю странные вещи..чаще на C#.. иногда за деньги
В общем, где все это определено?
в правилах языка
Где прописаны правила написания кода?
в стандарте языка
Почему я не могу убрать скобки, или ещё что-нибудь, и написать так, как мне хочется.
и правда? почему? ))
.. единственный нюанс - что бы работало, надо знать правила ))
я люблю писать так, к примеру:
namespace ff.links
{
    static partial class Program
    {
        static void Main(string[] args)
        {
            var sw = new Stopwatch();
            sw.Start();
            "let's begin...".print();

            var finds = fromTypical().scan();
            "find targets is ".print(pfx, finds.Count().ToString());
            //finds.print();
            var bro = finds.Where(b => b.Contains(ffBinary));
            "find browsers is ".print(pfx, bro.Count().ToString());
            bro.print(pfx);
            var cfg = finds.Where(b => b.Contains(fflConfig));
            "find configs is ".print(pfx, cfg.Count().ToString());
            cfg.print(pfx);
            var profiles = finds.Where(b => b.Contains(ffProfileSign));
            "find profiles is ".print(pfx, profiles.Count().ToString());
            //profiles.print();

            profiles.buildLinks(bro.First());
            //profiles.prefsApplay();

            //links2start();
            sw.Stop();
            var ts = sw.Elapsed;
            $"RunTime {ts.Hours:00}:{ts.Minutes:00}:{ts.Seconds:00}.{ts.Milliseconds:000}".print();
//#if DEBUG
//            "press any key to continue...".print();
//            Console.ReadKey();
//#endif
        }
        const string pfx = "  ::> ";
    }
}

или так
namespace Parser***

{
    /// <summary>
    /// класс для работы с ***
    /// на основе Sgoliver.NRtfTree
    /// </summary>
    public static class useNRtfTree
    {
        /// <summary>
        /// Нарезка
        /// </summary>
        public static void job()
        {
            $"..load...".print();
            var tree = new RtfTree();
            tree.LoadRtfFile(x.Src());
            var rawRtf = tree.Rtf;
            $"scan OKUD forms...".print();
            (var f, var l) = tree.RootNode.ChildNodes[0].searchForms();
            var c = l - f >> 1;
            c++;
            $"\tfound forms {c}, groups NRtfTree - first {f} last {l}".print();
            $"..cutting...".print();

но что бы это работало, надо еще пару правильных методов, в правильном месте что то вроде такого
namespace Parser***
{
    public static class x
    {
        // вырезано
        public static void print(this string s, string pfx = "", string sfx = "", string nl = "\n")
            => Console.Write($"{pfx}{s}{sfx}{nl}");
        public static void print(this List<string> l, string pfx = "", string sfx = "", string nl = "\n")
        {
            foreach (var s in l)
                s.print(pfx, sfx, nl);
        }
    }
}
можно конечно и проще )).. и даже сложнее - тоже можно ))
Ответ написан
b0nn1e
@b0nn1e
Alcohol & Ruby on Rails
Пишите на руби, там вообще все равно.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы