Code for movement controller of the player in Unity I am writing code for games in Unity. I should write the part very often and would like to know the flaws of the piece of code. It seems like everything is fine, but nevertheless I feel that some parts may be wrong. I am interested whether my style of coding is good or bad and would like to hear from someone who see my code for the first time whether he or she understands it or not.

Here is the code:

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class MovementController : MonoBehaviour
{
    private enum Turned
    {left, right};
    private Turned turned;

    public float walkingSpeed, runningSpeed, currentSpeed;
    public Transform playerTransform;
    public PlayerAnimationController playerAnimationController;
    public SpriteRenderer playerSpriteRenderer;

    void Start ()
    {
        initializeNeededForMovementVariables();
    }

    private void initializeNeededForMovementVariables()
    {
        turned = Turned.left;
    }

    void Update ()
    {
        moveHorizontallyAndAnimateMovementIfNecessary();

    }

    private void moveHorizontallyAndAnimateMovementIfNecessary()
    {
        float moveHorizontallyValue = Input.GetAxis("Horizontal");
        if (moveHorizontallyValue == 0)
        {
            playAnimationOfBeingIdle();
            return;
        }

        if (Input.GetKey(KeyCode.LeftShift) || Input.GetKey(KeyCode.RightShift))
        { currentSpeed = runningSpeed; }
        else
        { currentSpeed = walkingSpeed; }

        conductHorizontalTranslationOfThePlayer(moveHorizontallyValue);
        flipFacingIfNecessary(moveHorizontallyValue);
        playAnimationOfHorizontalMovement();
    }

    private void playAnimationOfBeingIdle()
    {
        playerAnimationController.beingOnlyIdling();
    }

    private void playAnimationOfHorizontalMovement()
    {
        if (currentSpeed == walkingSpeed)
        { playerAnimationController.beingOnlyWalking(); }
        else if(currentSpeed == runningSpeed)
        { playerAnimationController.beingOnlyRunning(); }
    }

    private void flipFacingIfNecessary(float moveHorizontallyValue)
    {
        if (moveHorizontallyValue &gt; 0 &amp;&amp; turned == Turned.left)
        {
            toggleFlipXOnPlayerRenderer();
            turned = Turned.right;
        }
        else if(moveHorizontallyValue &lt; 0 &amp;&amp; turned == Turned.right)
        {
            toggleFlipXOnPlayerRenderer();
            turned = Turned.left;
        }
    }

    private void toggleFlipXOnPlayerRenderer()
    {
        playerSpriteRenderer.flipX = !playerSpriteRenderer.flipX;
    }

    private void conductHorizontalTranslationOfThePlayer(float moveHorizontallyValue)
    {
        transform.Translate(moveHorizontallyValue * currentSpeed, 0, 0);
    }
}


Will appreciate any attention and comments. If this question is not appropriate for the site and should be in game overflow, please, move it there.
First of all, I didn't like the long method names you used in the script. 
like:

void Start ()
{
    initializeNeededForMovementVariables();
}


I mean, why did you need to call it like that? In my opinion this makes the code very messy once you have a lot of code in a script.
I would had call it something like: "InitVariables" or simply "Init"

Again, 

float moveHorizontallyValue = Input.GetAxis("Horizontal");


The same point applies here too. You could have just written:

float h = Input.GetAxis("Horizontal");


Another thing: Why are you doing the following block?

private void playAnimationOfHorizontalMovement()
{
    if (currentSpeed == walkingSpeed)
    { playerAnimationController.beingOnlyWalking(); }
    else if(currentSpeed == runningSpeed)
    { playerAnimationController.beingOnlyRunning(); }
}


You have all this code to play animations. I suppose you are using other scripts too, and again, this is my opinion, it makes everything not totally understandable.

Then, Why aren't using an animator?

The code would be A LOT less and also A LOT more understandable, plus WAY EASIER to code!

Now, don't worry if your code isn't perfect now, you'll get better at it. It requires time. I really hope this helps you, Let me know!

Cheers