新電力事業入門


新電力・電力自由化に興味がある人向けの勉強用ブログです。

Linq 値渡し、参照渡し

        static void Main(string[] args)
        {
            var array = Enumerable.Range(1, 3);
            var first = array.First(item => item == 1);
            first = 100;

            foreach (var value in array)
            {
                Console.WriteLine(value);
            }

            Console.ReadKey();
        }
この結果ってどういった表示になると思います?
正解は
1
2
3
となります。
これはarrayがintの配列情報で、検索した結果が値型なので「100」で置き換わりません。

次に
        private class Test
        {
            public int value;
        }

        static void Main(string[] args)
        {
            var array = new List<Test>()
            {
                new Test{ value = 1 },
                new Test{ value = 2 },
                new Test{ value = 3 }
            };

            var first = array.First(item => item.value == 1);
            first.value = 100;

            foreach (var test in array)
            {
                Console.WriteLine(test.value);
            }

Console.ReadKey(); }
とした場合、結果はどうなるでしょうか?
正解は
100
2
3
となります。
これはarrayがクラスのリスト情報で、検索した結果が参照型なので「100」で置き換わります。

予備線・予備電源の違い

予備線
通常は常時供給用の配電線を通して、変電所から需要家へ電力が供給されます。
配電線で問題が発生すると電力の供給が止まってしまいますが、予備の配電線(予備線)があると滞りなく供給されます。


予備電源
予備線契約では配電線の問題には対応できますが、変電所で問題が発生すると電力の供給が止まってしまいます。予備電源契約をしておくと別の変電所から配電線を通して電力が供給されます。


電力自由化

電力自由化のおかげで、電気をどこから購入するか自由に選べるようになりました。
*以下既存の電力会社は「電力会社」、新しい電力会社は「新電力」とします。

ただ、新電力に切り替えると
・なんで料金が安くなるの?
・新電力が電力供給停止したら停電するのか?
など不安点もあり、切り替えをためらっている人も一定数います。

なんで料金が安くなるの?

電気料金が安くなる理由は色々あると思いますが、いくつか挙げてみます。
・人件費
 電力会社に勤めている方の給料…高いよね。
 新電力に勤めている人は電力会社と比べると給料は安い。

・設備投資費
 電力会社は発電設備を多く作っている。
 新電力は会社によるけど、基本的にあまり発電設備作らない。
 要は設備投資費が少なくて済む。

・常時バックアップ、JEPXなと調達単価が安く済む
 JBUは東京だと1kWh 14円?ぐらいか、JEPXのスポットは季節、時間帯で結構違うけど
 今日見たら1kWh 7~13円ぐらいだった。
 *ただ、JEPXはシングルプライスオークションで決まるので、高いときは高いです。
  この間100円とか言ってたし('Д')
ってところです。

難点は低圧の需要家が増えていくと、請求業務や電話対応で業務負荷が多くなること。
大東、福島電力辺りは上記が原因で撤退してた。

新電力が電力供給停止したら停電するのか?

停電しません。
新電力が電力供給停止した場合、電力会社が変わりに供給します。

HTML - 枠

暇つぶしのブログですが、少し凝ってみようかと。 枠ぐらいは入れてみようかな。


枠テスト

デリゲートの概要

デリゲートって分かりづらいし、どんな時に使えばいいんだってなるよね。


たとえば、1から1000までを足して値を表示、引いて値を表示する際に
ゴリゴリに書くと以下のようになります。

        static void Main(string[] args)
        {
            int sum = 0;
            for (int i = 1; i <= 1000; i++)
            {
                sum += i;
            }

            Console.WriteLine(sum);

            sum = 0;
            for (int i = 1; i <= 1000; i++)
            {
                sum -= i;
            }

            Console.WriteLine(sum);

            Console.ReadKey();
        }

この繰り返し処理で枠は同じで
sum +=i とsum-=i
の部分を差し替えられるとうれしいですよね?

ということで

        delegate void Calculation(ref int sum, int i);

        private void Calc(Calculation calculation)
        {
            int sum = 0;

            for (int i = 1; i <= 1000; i++)
            {
                calculation(ref sum, i);
            }

            Console.WriteLine(sum);
        }

        static void Main(string[] args)
        {
            var program = new Program();
            program.Calc((ref int sum, int i) => sum += i);
            program.Calc((ref int sum, int i) => sum -= i);

            Console.ReadKey();
        }


staticメソッドから、メソッドの呼び出しについて

staticメソッドから、staticメソッドしか呼べないと思っている人がいる。

        static bool IsOver(int value)
        {
            if(1000 < value)
            {
                return true;
            }

            return false;
        }

        static void Main(string[] args)
        {
            IsOver(100);

            Console.ReadKey();
        }

別に上記でもいいんだけど、

        bool IsOver(int value)
        {
            if(1000 < value)
            {
                return true;
            }

            return false;
        }

        static void Main(string[] args)
        {
            var program = new Program();
            program.IsOver(100);

            Console.ReadKey();
        }

で良いんだぜ。

サイト内検索
アクセスカウンター
  • 今日:
  • 累計:

プロフィール

暇人

特にやることもないので、新電力・電力自由化についての勉強をしています。

免責事項
当ブログに掲載されている内容について、正しい情報を提供することに務めてはいますが、提供している記事の内容や公開しているソフトウェアでいかなる損失や損害などの被害が発生したとしても、当ブログでは責任を負いかねます。
  • ライブドアブログ