Re[2]: Самый удобный человеко-читаемый язык данных
От: Shmj Ниоткуда  
Дата: 19.12.24 04:40
Оценка:
Здравствуйте, Osaka, Вы писали:

O>Для данных человечество придумало Excel.


Это уже через инструмент. А иногда нужно чтобы во прямо текст в чистом виде с помощью простейшего текстового редактора (или в консоли) нужно было читать. И почти все данные верхнего уровня (HTML, CSS, JSON, XML) — они передаются в человеко-читаемом виде, хотя могли бы юзать бинарный формат.

O>Недостаточную человекочитаемость формата нужно компенсировать инструментами.


Но чтобы легче было писать эти инструменты — разработчику лучше человеко-читаемый а не бинарный формат.

O>Сделать как в редакторе xaml, сверху список таблиц в файле + данные выбранной, снизу xml/жсон/хзчто или вообще бинарник,


Сейчас вопрос о то что снизу — какой формат там удобнее. XML — банально больше лишних символов, что утомляет.

Вот, для примера, что вам удобнее читать:

<Window x:Class="ExampleApp.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Example" Height="300" Width="400">
    <Grid Margin="10">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*" />
        </Grid.ColumnDefinitions>

        <!-- Заголовок -->
        <TextBlock Text="Введите текст:" Grid.Row="0" Margin="0,0,0,10" />

        <!-- Поле ввода текста -->
        <TextBox Name="InputTextBox" Grid.Row="1" Margin="0,0,0,10" />

        <!-- Кнопка -->
        <Button Content="Показать текст" Grid.Row="2" Click="OnButtonClick" />

        <!-- Вывод текста -->
        <TextBlock Name="OutputTextBlock" Grid.Row="3" Margin="0,10,0,0" Foreground="Blue" />
    </Grid>
</Window>

using System.Windows;

namespace ExampleApp
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void OnButtonClick(object sender, RoutedEventArgs e)
        {
            // Получение текста из TextBox и вывод его в TextBlock
            OutputTextBlock.Text = InputTextBox.Text;
        }
    }
}


import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(title: const Text("Example")),
        body: const InputWidget(),
      ),
    );
  }
}

class InputWidget extends StatefulWidget {
  const InputWidget({super.key});

  @override
  State<InputWidget> createState() => _InputWidgetState();
}

class _InputWidgetState extends State<InputWidget> {
  final TextEditingController _controller = TextEditingController();
  String _displayText = "";

  @override
  Widget build(BuildContext context) {
    return Padding(
      padding: const EdgeInsets.all(10),
      child: Column(
        mainAxisAlignment: MainAxisAlignment.start,
        crossAxisAlignment: CrossAxisAlignment.start,
        children: [
          // Заголовок
          const Text(
            "Введите текст:",
            style: TextStyle(fontSize: 16),
          ),
          const SizedBox(height: 10),

          // Поле ввода текста
          TextField(
            controller: _controller,
            decoration: const InputDecoration(
              border: OutlineInputBorder(),
              hintText: "Введите что-то",
            ),
          ),
          const SizedBox(height: 10),

          // Кнопка
          ElevatedButton(
            onPressed: () {
              setState(() {
                _displayText = _controller.text;
              });
            },
            child: const Text("Показать текст"),
          ),
          const SizedBox(height: 10),

          // Вывод текста
          Text(
            _displayText,
            style: const TextStyle(fontSize: 16, color: Colors.blue),
          ),
        ],
      ),
    );
  }
}
Отредактировано 19.12.2024 4:43 Shmj . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.